2009-12-22 26 views
0

我订购了一个客户端订单,您可以查看它here。你可以看到它创建了一个有5个输入字段(每行)的新行。这是我的问题,我有这种形式输出格式为HTML格式的客户端电子邮件为办公使用。我需要为新创建的行中的每个输入添加一个“唯一名称”,以便将其传递给处理并发送到电子邮件。创建新表格行时添加输入名称

Here is the JS file for adding rows

我知道这必须由$ addRowBtn被触发,但我一直在这一段时间,现在,一切我都试过刚刚打破了形式。

我已经试过了这个例子,但无济于事:

thisRow.find("input.ClassName").attr("name","newName" + num); 
num++;

我会买的第一人,与这样的咖啡或一杯东西帮助!它正在窃听我永远生活的垃圾!

+0

感谢Jon编辑我的链接,抱歉。 – Jay 2009-12-22 20:08:42

回答

0
在JavaScript

要设置thisRow如下

thisRow = $(this).parents("tr"); 

,但它应该是

thisRow = $(this).parents("tr").eq(0); 

那么你可以做

thisRow.find("input").each(function(i) { 
$(this).attr("name", "newName" + i); 
}); 

还要检查一下这个返回警报(thisRow .find( “输入”)的长度)。它应该返回5,因为在该行中有5个输入元素。 我希望它能起作用。

0

只看这个,我可以看到这是附加到“删除行”功能。不应该在“添加行”功能中触发此功能。我会给它旋转,看看会发生什么。另外,因为每一行都有一个唯一的标识符(orderType,sample,pattern等),每创建一个新行时每个输入都会增加,我可以给每个输入分配一个起始值,如下所示:

input class="order_type" name="orderType[i]" type="text"

而我不能只为每个输入设置一个数组,并循环它直到它击中“最大行数”是6?

我只是不知道如何将该值“i”推送到每行上新创建的输入。

相关问题