AJAX调用跳过了发送一些参数,或者PHP丢失了一些参数


AJAX call skips sending some parameters or PHP loses some of them

当通过ajax调用(jQuery1.4)发送参数时,我遇到了一个奇怪的问题,但只使用IE。我也尝试过不使用jQuery,并编写了自己的xmlhttp请求,但我仍然得到相同的结果。

当我像这样发送变量时:

var1 = value1, var2 = value2, var3 = value3, var4 = value4

它们都作为数据属性传递给ajax查询,并发送给服务器。然而,在随机的地方缺少随机参数。例如,PHP服务器只接收:

var1 = value1, var3 = value3, var4 = value4

传递的值是URL编码的,包含正常的短文本字符串。是什么导致了这种变量的随机跳跃?

为什么不用对象呢?这样,您就不必担心编码参数。

$.ajax({
    url: 'your_url',
    type: 'post',
    data: {
        var1 : 'value1',
        var2 : 'value2',
        var3 : 'value3',
        var4 : 'value4'
    }, 
    success: function(result) {
        alert('result');
    }
);