2011-04-19 111 views
1

,這樣你得到的圖片(最大的),我全力以赴在這裏撥弄:在動態表單一些錯誤,我很想得到固定

http://jsfiddle.net/ch29z/11/

當你點擊+在第一行中,它克隆了突出顯示狀態下的+,因此副本是綠色的。

如果您將第一行設置爲例如。 agent = excel,當它克隆時,第一個下拉列表被設置回標籤,但第二個和第三個列表保持爲「=」和「excel」

如果添加第二行,但刪除第一行,則添加另一行,項目之間的間距與首次添加行時的間距不同(IMO的間距實際上更好,一旦你做完了,這顯然是一個CSS問題,但我不能讓它坐下來。 )

此外,當您選擇變體,然後返回到變體,文本框被複制,以便現在有2個,如果您重複該過程添加另一個文本框。

不確定爲什麼會出現這種情況,因爲所有其他動態生成的文本框的代碼都是相同的。

對這些錯誤的任何幫助都非常感謝,另外幾對眼睛真的幫助。

問候,

馬丁

回答

0
$(this).parent().find(".valuestextbox").remove(); 

似乎要做的伎倆。謝謝你的幫助。

1

的空間似乎來自你設定的保證金您的選擇:

.dropdownclone select { 
... 
    margin-bottom: 15px; 
    margin-top: 5px; 
} 

對於div.autocomplete你應該在DOM準備好,一起玩一個style="display:none",就像你用select做的那樣。但是如果你喜歡像你一樣注入它,你需要檢查它是否不存在。

+0

謝謝,你有什麼想法如何實施檢查?我嘗試了以下方法:var variantClones = $('。valuestextbox')。size()+ $('。valuestextboxclone')。size(); (variantClones <1){ 如果(variantClones <1){ $ values.after($ valuestextbox.clone()); } if(variantClones> = 1){ return; }'但是如果您在兩個生成文本框的選項之間切換,則自動完成列表不會更新,它仍然與第一個文本框相同。希望這是有道理的。 – martincarlin87 2011-04-19 13:27:46

+0

可能每次您在'$ values.after($ valuestextbox.clone())'做一個'$ values.find('div.autocomplete')。remove()'之前。但是,男人,這是一個奇怪的代碼,有很多重複,你試圖在這裏運行。 – Mic 2011-04-19 18:47:58

+0

感謝您的幫助 - 這似乎是在您提到的位置上做的訣竅:'$(this).parent()。find(「。valuestextbox」)。remove();' – martincarlin87 2011-04-20 08:37:54

相關問題