-3

我正在尝试通过 ajax 请求处理表单。问题是我在表单中有一个数组变量,当我通过序列化处理它以通过 ajax 发送时,它返回:

email_id%5B%5D=1&email_id%5B%5D=2&test=23

那是 .serialize 的结果。

我还在为数组变量使用多个选择标签。

为什么我会收到这个错误,我应该怎么做才能避免和修复它。

<select name="email_id[]" id="email_id_0" style="width: 350px;margin-right: 5;">
</select>

function setList(str){
    var postDatas = $('#form'+str+'').serialize();
    alert(postDatas);
    // $('#crm-feedback').html('<img src="images/ajax-loader.gif"/>');
    $.ajax({
        url: 'somewhere/file.php',
        type: 'POST',
        data: postDatas,
        success: function(data){
            // $('#crm-feedback').html('Saved!').css('color','green');
            alert("test");
        }

    });
}

谢谢你。

4

2 回答 2

2

尝试关注

var array = document.getElementById("<your array elem>");
        var formdata = new FormData();
        for(var i=0; i< array.length; i++){
            formdata.append("<key>",array[i]);
        }

        $.ajax(
         {
             url: "<url>",
             dataType: "<expected return datatype>",
             type: "POST",

             data: formdata,
             success: function (result, status) {
                //process success
             },
             error: function (result, status) {
                //process failure
             }
         });
于 2013-06-20T16:03:41.257 回答
1

我今天遇到了一个几乎相同的问题,现在由于这里的帮助而得到解决 -阅读这篇文章并查看 jsfiddles

于 2013-06-20T16:14:11.427 回答