由於克隆克隆了整個事物(文本框的值,名稱,標識以及您可以想到的任何屬性),您可能只想生成新的文本框而不是使用clone()。 生成一個新的文本框,您可以使用此代碼:
var new_txt = $('<input>').attr({'type' : 'text'});
您可以用逗號分隔,每個屬性指定多個屬性輸入:
$('<input>').attr({'type' : 'text', 'name' : 'something'});
爲了達到你想要做什麼你需要一個容器來添加新生成的文本框。
<div id="container">
<input type="text" id="txt_item"/>
</div>
然後,只需使用實時()方法,以使每次用戶按上生成一個新的文本框,一個文本框中輸入:
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
<script>
$('input[type=text]').live('keydown', function(e){
var new_txt = $('<input>').attr({'type' : 'text'});
if(e.keyCode == 13){//If user press enter
new_txt.appendTo('#container').focus(); //append then focus to new textbox
}
});
</script>
正如你可以看到這是一個非常簡單的例子,但你可以從這裏拿走它。祝你好運!
嗨,歡迎來到StackOverflow!你能告訴我們你到目前爲止所嘗試過的嗎?我們喜歡使用jsfiddle.net來展示示範:) – Undefined 2012-07-28 22:23:41
謝謝薩姆,我會提供一個鏈接到jsfiddle.net。 – 2012-07-29 07:14:01