2011-04-26 35 views
0

我有一個帶有少量標籤的html。在所有選項卡中都有一個輸入類型=文本。如果我在tab1的輸入中輸入了某些內容,那麼如何將它輸入到其他選項卡中的其餘輸入?jQuery:將標籤中的輸入文本攜帶到另一個標籤

當你問一個問題,你會在下面看到一個預覽框,但是相反,這也是一個輸入。

如果輸入ID是input1,input2和input3是否有人可以讓我看到一個快捷方式?

非常感謝

回答

2

我會用一個類上的投入

$('.group_input1').change(function(){ 
    $('.group_input1').val(this.value); 
}); 
+1

這是一個很好的解決方案,但您應該使用'this.value'而不是'$(this).val()'。同樣的結果,但它直接訪問DOM而不是通過jQuery。從小規模來看,它並沒有太大的區別,但這是對jQuery賦予我們的權力的濫用。在一個更小的筆記,你忘了密切paren和分號:) – Ender 2011-04-26 18:48:51

+0

@恩德謝謝你的提示 – mcgrailm 2011-04-26 18:51:51

2
$('#input1').blur(function() { $('#input2,#input3').val(this.value); }); 

這裏的工作演示:http://jsfiddle.net/Ender/C5L7W/

我選擇模糊的更新事件,因爲切換標籤(如源文本框會失去焦點)時,必須發生此事件,與使用諸如keyup,keydown或keypress之類的東西相比,它涉及對其他輸入的最少更新。

+0

更爲精簡的代碼! – 2011-04-26 18:20:04

+0

@Tim--來自大量練習,採取快捷方式:) – Ender 2011-04-26 18:22:15

+0

謝謝。這似乎工作,但如果第一個盒子是input2呢?我的意思是首先用戶在輸入2中鍵入一些東西?我必須爲input2做同樣的事嗎?我正在談論20個不同的輸入/標籤。非常感謝 – jQuerybeast 2011-04-26 18:37:55

0
$('#input1').blur(function(){ 
    if ($('#input1').val() != '')} 
     $('#input2').val($('#input1').val()); 
     $('#input3').val($('#input1').val()); 
    } 
}); 

類似的東西應該工作...但你可能要檢查,如果在標籤2輸入第一個充滿..如果是這樣那麼我們就可以返工此代碼的情況。

相關問題