我有以下代码。 jQuery Ajax调用webmethod。如果我通过邮政编码“ 07306”,它将返回并将会话设置为“ 7306”。不知道为什么它会从前面删除零!

function  onChangeLocation(){
        var newzip =$('#<%= txtNewLocation.ClientID %>').val();
        $('#<%= lblDefaultLocation.ClientID %>').html(newzip);
            $.ajax({
          type: "POST",
          url: "/WebMethods.aspx/ChangeLocation",
          data: "{newLocation:" + newzip + "}",
          contentType: "application/json; charset=utf-8",
          dataType: "json",
          success: function(msg) {
          alert(msg.d);
          }
            });
       }


     [System.Web.Services.WebMethod()]
            public static String ChangeLocation(String newLocation)
            {

                HttpContext.Current.Session["ClientZipCode"] = newLocation.ToString();
                return newLocation.ToString();
            }


有人可以解释一下为什么从前面删除零吗?

最佳答案

问题是JS认为它是整数变化

$('#<%= lblDefaultLocation.ClientID %>').html(newzip);




$('#<%= lblDefaultLocation.ClientID %>').html(newzip + '');


应该修复它。

09-19 13:59