AJAX将“00”字符串截断为“0”
问题描述:
因此,我使用ajax传递值“00”,出于某种原因,当我的WebMethod接收到字符串时,它只有“0”如何确保截断不会发生?AJAX将“00”字符串截断为“0”
$.ajax({
url: 'http://localhost//Scripts/test.aspx/test',
type: 'POST',
data: JSON.stringify('{"tivId":"' +
$(e.relatedTarget).data('id') +
'","lotId":"' +
<%= LotId() %>
'"}'),
contentType: 'application/json; charset=utf-8',
dataType: 'json',
success: function(response) {
SetSuccessModal();
},
failure: function(response) {
alert(response.d);
}
});
答
尝试添加一些符号TRU:
"|00|"
然后在WEBMETHOD删除它们
param.replace("|","");
这是一个时间快速的解决方案,当然是更好,如果你能抓住这是为什么发生。
附加到这一点,也许日期类型可以在这里引起的问题,例如,在... INT X = 00; //这将被存储为0
+0
它似乎被截断为“| 0 |”在它甚至发送到webmethod之前 – Cowmoogun
+0
然后,我认为你的函数返回一个整数值。你也可以尝试使用“.toString()” – BlackJohan
你能提供的代码,请。 – Dale
您需要检查长度,例如长度 MethodMan
检查LotId()以及数据到达的每个地方。可能某些地方发送或接收整数数据,或者某些地方转换为整数 – AmirhosseinYari