php - 在 javascript 中传递数组元素作为 AJAX POST 请求的参数

标签 php javascript prototypejs

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

http://api.prototypejs.org/dom/Form/serializeElements/

关于php - 在 javascript 中传递数组元素作为 AJAX POST 请求的参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16396923/

相关文章:

php - Codeigniter 扩展扩展的 MY_Controller

javascript - 使用提交按钮上的 javascript 更新 php 中的 SQL 语句

php - 与 suPHP 一起实现登录

javascript - 单击按钮时从数组中交换图像

javascript - 如何使用 Prototype 处理 URL?像http ://mywebserver/#page-4

php - 为什么 PHP 5.2+ 不允许抽象静态类方法?

javascript - 在网页内的图像上标记矩形以选择感兴趣的区域

javascript - 如何将 JavaScript 浮点 PCM 音频数组转换为小端字节字符串?

google-maps - Google Maps 和 Richfaces 3.3.3 (prototype.js 1.6.0.3) 可能不兼容

javascript - 是否有用于类似 stackoverflow 的投票的 Ajax(原型(prototype)或 JQuery 插件)示例?