下拉列表仍为空 - 使用json数据填充

时间:2013-03-14 14:03:29

标签: asp.net ajax json

我正在使用json数据填充从sql server的另一个下拉列表的更改事件的下拉列表, 当我在firefox中检查时,我收到了json数据 但我的下拉仍然是空的 有人可以帮我解决我在这里做错了什么 这是我的代码

   function OnCathwordPopulated(response) {

         var xx = (typeof response.d) == 'string' ? eval('(' + response.d + ')') : response.d;

         $("#<%=ddlCatchword.ClientID %>").removeAttr("disabled");

         $("#<%=ddlCatchword.ClientID %>").children().remove();

         $("#<%=ddlCatchword.ClientID %>").empty().append("<option selected='selected' value='0'>Please select</option>");

         var listItems = "";
         for (var i = 0; i < xx.length; i++) {

             var val1 = xx[i];

             var text1 = xx[i];
             listItems += "<option value='" + val1+ "'>" + text1 + "</option>";


         } $("#<%=ddlCatchword.ClientID%>").html(listItems);


     }

我还使用了另一种方法 这是

             $("#<%=ddlCatchword.ClientID%>").append($("<option></option>").val(val1).text(text));

3 个答案:

答案 0 :(得分:0)

修改代码以正确删除。我假设这是根据上面的代码选择正确的列表。另外,例如:http://jsfiddle.net/Tkt2B/

$("#<%=ddlCatchword.ClientID %>").removeAttr("disabled");
$("#<%=ddlCatchword.ClientID %>").find("option").remove().end()
$("#<%=ddlCatchword.ClientID %>").append("<option selected='selected' value='0'>Please select</option>");

 var listItems = "";
 for (var i = 0; i < xx.length; i++) {
     var val1 = xx[i];
     var text1 = xx[i];
     listItems += "<option value='" + val1+ "'>" + text1 + "</option>";
 } 

 $("#<%=ddlCatchword.ClientID%>").append(listItems);

答案 1 :(得分:0)

我尝试过这种方法来测试数据

var h = ' <select name="test" id="ss" class="country" data-native-menu="false">';
             h = h + listItems;
             var w = window.open(); $(w.document.body).html(h);

它会在新窗口中打开所有json数据的新dropdwon .. 我不知道有什么奇怪的错误...... 请注意我使用asp.net使用jquery mobile

答案 2 :(得分:0)

通过使用以下技巧解决它,

 $("#<%=ddlCatchword.ClientID%>").html(listItems); $("#<%=ddlCatchword.ClientID%>").selectmenu('refresh', true);

使用http://ozkary.blogspot.no/2010/12/jquery-mobile-select-controls-populated.html的帮助 谢谢!