HTML5   发布时间:2022-04-25  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了html5 – jQuery改变另一个大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在尝试使用jQuery .change()创建两个< select>第一< select id =“state”>的元素用于生成状态列表和第二个< select id =“city”>是生成城市列表.

状态和城市的值不会被硬编码,而是从Web服务传递的值生成.

生成的选项列表应该像这样工作:如果用户从< select id =“state”>中选择状态选定的值将传递给Web服务以检索列表以生成< select id =“city”>对于城市.

我真的不确定如何实现这一点.有人可以告诉我吗?

解决方法

它应该看起来像

$(function(){
// populate the states list from Ajax 


    $.ajax( {
       url:"/listStates",type:"GET",success:function( data ) { 
            var statesList = data;
            if ( typeof(data) == "string" ){
                 statesList = JSON.parse(data);
            }
            $.each( statesList,function( index,state ){
                     $("#state").append($("<option></option>",{value:state.value,text:state.label});
                });
       },error:function( result ) { 
            console.log(["error getting states",result]);
       }
    });

    // register on state list change
    $("#state").change( function(){
            // on change dispatch an AJAX request for cities and populate cities 
        $.ajax({ url : "/listCities",data : {"state": $("#state").val() },type:'GET',success:function( data ) {
                var citiesList = data; // assuming list object
                if ( typeof(data) == "string"){ // but if string
                    citiesList = JSON.parse( data );
                } 
                            $("#city").empty();
                $.each(citiesList,function(index,city){
                    $("#city").append($("<option></option>",{"value":city.value,"text":city.label}));
                }
            },error:function( result ){ console.log(["error",result]); }

    })
});

这可以让你开始,但我没有遵循lint最佳做法.

 走过去

>我在具有id状态的select上注册“change”事件.
>当触发更改时,我调用Ajax请求到位置“/ listCities”
>我假设使用“GET”方法调用此位置
>我传递当前选中的状态 – 因此服务器将知道要列出的城市.
>如果Ajax通过错误,我将错误记录到控制台.
>如果Ajax成功,我将使用id“city”填充select,其中包含每个城市和标签的值的选项.

编写代码时我假设了以下内容

>您有一个期望状态的路线GET / listCities.
>该路线的响应是一个JSON,其中包含每个城市的值和标签列表.像这样的东西:

[{value:“AM”,label:“Amsterdam”},….]

您可能需要阅读的有关此示例的唯一内容是:

> JQuery Ajax Calls
> Best Practice To Populate A List With JQuery

如果您有任何疑问,请评论我的回复,我将很乐意解释/添加/修改

大佬总结

以上是大佬教程为你收集整理的html5 – jQuery改变另一个全部内容,希望文章能够帮你解决html5 – jQuery改变另一个所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。
标签: