2009-12-22 28 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」推送到每行上新創建的輸入。

相關問題