代码之家  ›  专栏  ›  技术社区  ›  Cowmoogun

AJAX将“00”字符串截断为“0”

  •  0
  • Cowmoogun  · 技术社区  · 7 年前

    因此,我使用ajax传递一个值“00”,由于某种原因,当我的WebMethod接收到字符串时,它只有“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);
        }
    });
    
    2 回复  |  直到 7 年前
        1
  •  1
  •   BlackJohan    7 年前

    尝试添加一些符号tru:

    "|00|"
    

    然后在webMethod中删除它们

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

    当然,这是一个暂时的快速解决方案,如果你能理解为什么会发生这种情况,那就更好了。

    除此之外,日期类型可能会在这里引起问题,例如。。。int x=00;//这将存储为0

        2
  •  -1
  •   Dale    7 年前

    没有任何代码就无法确定,但字符串可能会在传输之前的某个地方转换为整数。