1

我从用户那里获取了一些输入值,我想将这些值作为参数发布到我的 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
            }
    );
}

变量输入包含我需要的所有输入字段,所以我只需要提取它们的值但是如果它们没有键,我如何将它们放入参数部分?它们只是价值观。

4

1 回答 1

0

Use Form.serializeElements()which 接受一个元素数组,$$("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/

于 2013-05-06T15:35:21.680 回答