发送序列化数据加上其他参数不起作用

时间:2014-10-01 21:53:54

标签: javascript php jquery

我需要写这个:

$.ajax({
        url:webPath + '/ajax/list_filter.php',
        data:{form:serializedForm,userId:localStorage['userId'],code:localStorage['code'],refreshType:refreshType},
        type:'POST'
    }).done(function(data){
        //do stuff with data 
    });

现在请注意serializedForm,正如其名称所示,它来自一个序列化的表单。问题是serializedForm作为字符串传递,PHP没有以正确的方式解析它,它看到其他变量正确发送并形成只有一个大字符串。 我怎么能解决这个问题,仍然使用非常方便的jQuery .serialize()方法?

1 个答案:

答案 0 :(得分:1)

就个人而言,我只会改变:

data:{form:serializedForm,userId:localStorage['userId'],code:localStorage['code'],refreshType:refreshType}

data:serializedForm+'&userId='+encodeURIComponent(localStorage.userId)+'&code='+encodeURIComponent(localStorage.code)+'&refreshType='+encodeURIComponent(refreshType)

这也应该使数据不受数组中数组的影响。