我被这个问题难住了。我试图通过迭代所有输入并收集它们的 val()
(这是一个字符串)来发送 AJAX 调用。
所以我的参数希望看起来像这样:
"action"=>"create",
"type"=>"zip",
"value"=> ["12", "13", "14", "14", "15", "16"],
"controller"=>"admin/distributions",
"email_id"=>"3"}
这就是我所拥有的,但它给了我一个[Object object]
作为值:
$(".all_of_morris").live("click", function(){
id = window.location.href.split("/")[5]
$.ajax({
type: "POST",
url: "/admin/emails/" + id + "/distributions",
dataType: "script",
data: { $.each($(".morris input"), function(){
value: $(this).val();
}),
type: "zip" }
});
});
最佳答案
如果您需要一个数组作为 value 属性,您可以使用 jquery map功能:
$(".all_of_morris").live("click", function(){
var data = {};
data.value = $(".morris input").map(function(){
return $(this).val();
}).get();
data.type = 'zip';
//..etc
id = window.location.href.split("/")[5]
$.ajax({
type: "POST",
url: "/admin/emails/" + id + "/distributions",
dataType: "script",
data: data
});
});
关于javascript - 如何在 javascript 中编写迭代器以进行简单的 AJAX 调用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5437203/