Javascript 发送序列化数据加上其他参数不';行不通
我需要这样写:Javascript 发送序列化数据加上其他参数不';行不通,javascript,php,jquery,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 wit
$.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没有以正确的方式对其进行解析,它将其他变量视为正确发送的,而form只是一个大字符串。
我如何解决这个问题,仍然使用非常方便的jQuery.serialize()方法?就我个人而言,我只想更改:
data:{form:serializedForm,userId:localStorage['userId'],code:localStorage['code'],refreshType:refreshType}
到
这将使您的数据远离数组中的数组。什么是
serializedForm
?JSON?检查json\u decode()
。这是我典型的序列化表单formData:sex=F&gay=ckd&search\u 1=&search\u 2=&search\u 3=good+rossa&search\u 4=&search\u 5=。serialize()不会转换为json
data:serializedForm+'&userId='+encodeURIComponent(localStorage.userId)+'&code='+encodeURIComponent(localStorage.code)+'&refreshType='+encodeURIComponent(refreshType)