0

次のように ajax 経由で配列を投稿します。

console.log(srcarray); //["16.png", "17.png", "19.png", "18.png"]

$.ajax({
    type: "POST", url: "update.php",
    data: {srcarray: srcarray}
})

エラーを取得:

TypeError: Type error       jquery-1.10.1.min.js:6

追加しようとしprocessData: false, contentType: false,ましたが、うまくいかないようで、エラーは表示されませんが、データをphpに投稿できません....

どうすればこれを修正できますか?
あなたの助けに感謝。ありがとう

UPDATE UPDATE
でエラー行が見つかりました:
t = x.isFunction(t) ? t() : null == t ? "" : t, i[i.length] = encodeURIComponent(e) + "=" + encodeURIComponent(t)

アップデート

配列が来る

以下のコンテナの各関数のコードでは、console.log(content_img_arr_merge) が結果を取得します。

["16.png"、"17.png"、"19.png"、"18.png"]
["0.png"]
["0.png"]
[]
[]

$.each(content_img_arr_merge, function (index, value) {
    content_img_arr_merge[index] = value.replace("u_img/"+id+"/", "");
});
console.log(content_img_arr_merge);   

コード テストを変更すると、次のようになります。

$.each(content_img_arr_merge, function (index, value) {
    content_img_arr_merge[index] = value.replace("u_img/"+id+"/", "");
});
console.log(content_img_arr_merge); 
content_img_arr_merge = ["16.png", "17.png", "19.png", "18.png"];

その後、エラーは表示されません...

4

3 に答える 3

0

引用符を追加してみてください。

つまり、

$.ajax({
    type: "POST", url: "update.php",
    data: {'srcarray': srcarray} //added quotes here 'srcarray'
});

または単にデータ配列のみを渡します。

    $.ajax({
        type: "POST", url: "update.php",
        data: srcarray
    });
于 2013-07-26T04:50:58.670 に答える
0

ここで答えを見つけてください https://stackoverflow.com/a/17876165/1575921
使用$.get() data: { "images" : array.get() }

于 2013-07-26T08:44:55.440 に答える
-1

$.ajax への data 引数は、文字列または " PlainObject " (基本的には "{}" または "new Object()" で作成された単純な配列) でなければなりません。

おそらく、次のコード スニペットのように、JSON.stringify を介して srcarray 引数を渡したいと思うでしょう。

$.ajax({
    type: "POST", url: "update.php",
    data: {srcarray: JSON.stringify(srcarray)}
})

そうすれば、反対側で簡単に配列に変換できる文字列が得られます。

于 2013-07-26T04:07:21.223 に答える