assemblyEl
は正しく作成されますが(1.jpg、2.jpg、3.jpg)、ajaxリクエストは常に最後のid(3)を送信します。いつもオブジェクトへの最後の参照がループで使われるのはなぜですか?
なぜこれが起こり、修正するのか?
var assemblies = [{id:1},{id:2},{id:3}];
for (var a in assemblies) {
var assembly = assemblies[a];
var assemblyEl = $('<img src="' + assembly.id + '.jpg" />')
.click(function() {
$.ajax({
type: "POST",
url: url,
data: { id: assembly.id },
async: false,
success: function (data) {
}
});
});
}
アセンブリはこの形式でなければなりませんか? – Ibu
待って、あなたはid 3を送ろうとは思わないのですか? – Ibu
配列の 'for ... in'ループの使用をやめてください。彼らは遅く、不安定です。 –