无法获得动态创建的文本框jquery的值

时间:2013-12-24 14:50:39

标签: javascript jquery

我有一个网页,用户在一个文本框中输入一个数字,然后在一个表格中创建该行数,每行中的文本框的id为“id [I]”,其中I是数字从for循环中分配用于添加文本框。在表单提交我试图获得这些文本框的价值。这是我的表单提交代码来测试。

$("#biopsyform").submit(function () {
    var site = $("#site[1]").attr("value");
    alert(site);
});

当我提交表单时,我会收到undefined

的提醒

我试过说var site = $("#site[1]#).val();并得到相同的结果。

当我在警报之前中断时,在javascript调试器中使用chrome开发人员工具时,它会显示$("#site[1]")的正确值,所以我不太清楚发生了什么。

非常感谢任何帮助。

这是jsfiddle当我提交时,我在jsfiddle中收到错误,我不知道为什么,我从未使用过jsfiddle。它可能是我问题的一部分,可能是当我把东西复制到jsfiddle时,我不知道。

2 个答案:

答案 0 :(得分:1)

尝试使用[

转义]\\
var site = $("#site\\[1\\]").attr("value");

or

var site = $("#site\\[1\\]").val();

<强> FIDDLE DEMO

您错过了$标志。

答案 1 :(得分:-2)

您需要使用$(“#site [1]”)的父级.attr(“value”);

示例:

$("#parent").find("#site[1]").val(); 

或其任何变化。