我从用户那里获取了一些输入值,我想将这些值作为参数发布到我的 AJAX 请求中,以便我可以在 PHP 中向数据库添加条目:
我在 JS 中的函数是:
function reqAdd()
{
var tablename = $("table").options[$("table").selectedIndex].value
var fields = new Array();
var inputs = $$("input.postfields");
new Ajax.Request(
"process.php?type=add&table="+tablename,
{
method: "post",
parameters:
onSuccess: functionName,
onFailure: ajaxFailure
}
);
}
变量输入包含我需要的所有输入字段,因此我只需要提取它们的值,但如果它们没有键,如何将它们放入参数部分?它们只是值(value)观。
最佳答案
使用 Form.serializeElements()
获取元素数组 $$("input.postfields")
并将其转换为准备 POST 的查询字符串或对象.
所以
var inputs = $$("input.postfields");
inputs = Form.serializeElements(inputs); //add this line
还有
parameters: inputs,
我个人喜欢将对象传递给 Ajax 请求,并跳过提交输入,这样我就可以将选项对象传递给 serializeElements()
inputs = Form.serializeElements(inputs,{hash:true,submit:false});
关于php - 在 javascript 中传递数组元素作为 AJAX POST 请求的参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16396923/