【发布时间】:2016-03-21 19:22:01
【问题描述】:
查看了许多有关此问题的问题 - 并没有找到真正的答案。所以这里...
我有一个表单,我将在其中动态添加部分(在本例中为“与会者信息”),因此我想使用 firstName[0]、firstName[1] 等名称。我已经编写了添加代码的代码每个部分都有一个新的数字索引。
不过……
当我尝试使用 JQuery(或只是普通的 JS)来读取任何表单字段的值(无论是否动态创建)时,我都无法定义。如果我将名称更改为firstName1、firstName2 等,它可以工作。仅当我使用数字数组索引时.. nada.
我试过了……
$('#firstName[' + indexNum + ']')val();
$('input[name=firstName[' + indexNum + ']]').val();
.. 以及其他几件事。 (是的,ID 与名称相同。)
我有什么遗漏吗?
【问题讨论】:
-
顺便说一句,您选择的命名约定不好。 HTML id 看起来像一个 JavaScript 索引。为什么不直接命名元素:
firstName1和firstName2等? -
@ScottMarcus 感谢 Scott - 但我试图找到一种更简单的方法来使用数组循环并将信息(基于结果)保存到不同的表中。这似乎比解析带有可能未知数字的名称更简单。
-
感谢其他人指出我根本没有看到的问题。就在你认为你已经涵盖了研究问题的时候......呃。谢谢大家的帮助 - 像往常一样。
-
你最好遵循这里的约定。提供独特且富有表现力的元素
id。不要担心稍后将它们全部收集到一个数组中,因为这很容易使用document.querySelectorAll(selector)。一旦它们在数组中,循环就很容易了。相信我,你越是努力让名字如你所描述的那样工作,你在路上的痛苦就越大。 -
@ScottMarcus 感谢Scott 的提示。我会看看!
标签: javascript jquery html