2015-03-25 64 views
0
function fill_CountryPod(Id) { 
      try { 
       $.ajax({ 
        type: "POST", 
        contentType: "application/json; charset=utf-8", 
        data3: "{}", 
        url: '../Handler.ashx?act=data7&val=' + Id, 
        dataType: "json", 
        async: false, 
        success: function (data3) { 
         var TotalItem = data3.length; 
         $("#<%= DDLPlaceOfDelivery.ClientID %>").empty(); 
         if (TotalItem > 0) { 
          for (var i = 0; i < TotalItem; i++) { 
           $('#<%=DDLPlaceOfDelivery.ClientID %>').append('<option value="' + data3[i].Value + '">' + data3[i].Text + '</option>'); 
          } 

这是我的代码后回到下拉后绑定下拉列表变得空白在后期使用JSON绑定下拉列表回下拉数据丢失

$('#<%=PlaceOfDeliveryText.ClientID %>').val($('<%=DDLPlaceOfDelivery.ClientID %> option:selected').text()); 
         } 
        } 
       }); 
      } 
      catch (e) { 
       alert(e); 
      } 
     } 
+0

你能提供更多细节吗?你什么时候绑定这个下拉列表? – Praveen 2015-03-25 09:00:01

+0

是的praveen绑定下拉使用上面的代码 – john 2015-03-25 09:03:03

+0

处理程序嗯我认为你应该绑定服务器上的下拉如果是WebForms,或者如果你使用ASP.MVC你可以创建该值的隐藏表单字段并绑定到下拉的变化事件将分配此隐藏字段 – user3455363 2015-03-25 09:41:55

回答

0

@Abhishek,我推荐一个小的变化对这个下面你行。

var TotalItem = data3.length; 

我建议你改变data3.lengthObject.keys(数据3)。长度。这样,它看起来如下:

var TotalItem = Object.keys(data3).length; 

这是因为,你的JSON字符串的长度不能简单data3.length中获取,请尝试我指定的变化。

希望这有助于!

+0

我的代码也运行,但问题是在页面回发。后回落下来变成空白.. data3.length也取长度它不是一个问题..... – john 2015-03-25 10:37:31

+0

请解决我的问题 – john 2015-03-25 10:39:38

+0

亲爱的praveen当我们运行下拉填充页面后回发它将成为空白。那是我的问题 – john 2015-03-25 10:43:31