我从用户那里获取了一些输入值,我想把这些值作为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
}
);
}
变量输入包含我需要的所有输入字段,所以我只需要提取它们的值,但是如果它们没有键,我如何将它们放入参数部分?
使用Form.serializeElements()
获取元素数组,$$("input.postfields")
并将其转换为准备张贴的查询字符串或对象。
var inputs = $$("input.postfields");
inputs = Form.serializeElements(inputs); //add this line
和
parameters: inputs,
我个人喜欢传递对象给我的Ajax请求,并跳过提交输入,所以我将传递一个选项对象给serializeElements()
inputs = Form.serializeElements(inputs,{hash:true,submit:false});
http://api.prototypejs.org/dom/Form/serializeElements/