2017-10-19 94 views
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); 
    } 
}); 
+0

你能提供的代码,请。 – Dale

+0

您需要检查长度,例如长度<2,那么您知道返回的值可以是从1到9之间的任何值,因此您可以使用And条件来检查值是否为.Contains(“0 “)'如果是这样,将字符串从'0'更改为''00'' – MethodMan

+0

检查LotId()以及数据到达的每个地方。可能某些地方发送或接收整数数据,或者某些地方转换为整数 – AmirhosseinYari

回答

1

尝试添加一些符号TRU:

"|00|" 

然后在WEBMETHOD删除它们

param.replace("|",""); 

这是一个时间快速的解决方案,当然是更好,如果你能抓住这是为什么发生。

附加到这一点,也许日期类型可以在这里引起的问题,例如,在... INT X = 00; //这将被存储为0

+0

它似乎被截断为“| 0 |”在它甚至发送到webmethod之前 – Cowmoogun

+0

然后,我认为你的函数返回一个整数值。你也可以尝试使用“.toString()” – BlackJohan

-1

不可能肯定地说没有任何代码,但字符串可能会在转换之前转换成一个整数。

+0

抱歉我编辑了代码。所以它会被转换成一个Int然后回到一个字符串? – Cowmoogun