2017-06-16 102 views
1

我在嘗試複製表單輸入項。是否有可能使用ID或類使用JavaScript指定特定的輸入和輸出字段?重複表單域輸入

在這個例子中,我試圖複製從ID1的條目,並把它輸出到UNIQUEID。但是,所有字段都受到影響。我如何指定ID?

<form> 
<input type="text" id="id1" name="" value="" /> 
<input type="text" id="id2" name="" value="" /> 
<input type="text" id="uniqueid" value=""> 
</form> 


var $unique = $('input[type="text"]').mousemove(function(){ 
$unique.val(this.value); 
}); 
+0

請參閱jQuery的[ID選擇器](https://api.jquery.com/id-selector/)。 – showdev

回答

2

我覺得你的電線都有點穿越這裏。您可以使用#選擇器通過它的ID選擇一個元素。

讓我們把這種更清晰一點通過分離出來:

var $id1 = $("#id1");   //Store id1 input 
 
var $unique = $("#uniqueid"); //Store uniqueid input 
 

 
$id1.mousemove(function() { //On mousemove event of id1 
 
    $unique.val($(this).val()); //Set unique's value to id1's value 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<form> 
 
    <input type="text" id="id1" name="" value="" /> 
 
    <input type="text" id="id2" name="" value="" /> 
 
    <input type="text" id="uniqueid" value=""> 
 
</form>

d4nyll提及在下面的意見,如果你只是想更新uniqueid現場隨時id1變化,那麼您應該將.mousemove()更改爲.keyup()

+1

我也不會使用'mousemove'事件。改用'onchange'事件。 – d4nyll

+0

這個變化完全基於假設,因爲OP沒有明確說明他的意圖。此外,'onchange'不是一個jQuery事件(它是'.change()'),它只在退出輸入時觸發。更準確的事件可能是'.keyup()'。 – Santi

+0

謝謝你的幫助和建議。 –