2

我确信对此有一个简单的答案,但我是一个自学 Javascript 和 JQuery 的新手,我只是自己知道的不够多。非常感谢您提供的任何帮助。

我正在构建一个表单,该表单根据表单用户输入的数百个不同输入为我的公司生成 HTML 电子邮件。与其将每个输入名称复制并粘贴到表单操作脚本中的 $_POST 行中以检索输入数据,我想知道是否有一种方法可以使用 Javascript/JQuery 生成 name="" 字段列表从表单上的每个输入中使这更容易?

例如,从下面的代码片段中,如何自动生成一个包含名称值"bottlespecial6image""bottlespecial6imagewidth""bottlespecial6imageheight""bottlespecial6imagelink""bottlespecial6includeprice"的列表(我的表单有数百个(如果不是数千个)输入,因此复制/粘贴似乎效率低下):

<input type="text" name="bottlespecial6image" value=""/>
<input type="text" name="bottlespecial6imagewidth" value=""/>
<input type="text" name="bottlespecial6imageheight" value=""/>
<input type="text" name="bottlespecial6imagelink" value=""/>
<input type="radio" name="bottlespecial6includeprice" value="yes"  checked="checked" />
<input type="radio" name="bottlespecial6includeprice" value="no"  checked="checked" />

如果这里已经涵盖了这一点,我深表歉意——我在这里搜索了类似的问题,但找不到任何东西。

4

2 回答 2

2

要创建要提交的序列化数组,您可以使用 jQuery 的serialize()

$('form').serialize();

要获取数组中的名称,您可以映射它们:

var inputs = $('form').find('input[name]'); //all inputs with a name in the form

var names  = $.map(inputs, function(el) { return el.name });

小提琴

于 2013-07-27T03:50:00.900 回答
0
$("[name='yourrequiredname']")

将为您提供所有同名元素的列表

于 2013-07-27T03:49:58.593 回答