我有以下代码。 Jquery Ajax调用webmethod。如果我传递zipcode“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();
}
有人可以解释为什么它从前面删除零吗?
答案 0 :(得分:1)
问题是JS认为它是一个整数改变
$('#<%= lblDefaultLocation.ClientID %>').html(newzip);
到
$('#<%= lblDefaultLocation.ClientID %>').html(newzip + '');
应该修理它。