2015-01-03 87 views
-2

我有3種格式。將2格式輸入的內容複製到1格式輸入

目前我正在使用;

$(document).on("ready", function(){ 
$('#hello').on('keyup', function() { 
    $('#InputFirstName').val($(this).val()); 
    $('#InputFirstName1').val($(this).val()); 
}); 
$('#lastname1').on('keyup', function() { 
    ('#InputLastName').val($(this).val()); 
    $('#InputLastName1').val($(this).val()); 
}); 
$('#InputEmail1').on('keyup', function() { 
    $('#InputEmail').val($(this).val()); 
    $('#contactemail').val($(this).val()); 
}); 

將文本從輸入複製到輸入。在第三種形式中,我有一個名爲「全名」的輸入,我如何獲取前兩個輸入(#hello#lastname1)的內容並將它們作爲姓和名內聯輸入(#fullname)?

任何幫助表示讚賞。

+0

你可以發佈你的HTML嗎? – jmore009

+2

真的不復雜,因爲您已經知道如何設定價值。從你想要的值創建一個新的字符串,並用該字符串設置輸入值 – charlietfl

+1

我從你的最後一個問題重複自己,但是:'FYI,$(document).on(「ready」,handler);對於jQuery的準備處理程序,語法真是糟糕。***從DOC:***'還有$(document).on(「ready」,處理程序),從jQuery 1.8開始已棄用。這與ready方法的行爲相似,但如果ready事件已經被觸發,並且您嘗試.on(「ready」),則綁定的處理程序將不會被執行。以這種方式綁定的就緒處理程序在被上述其他三種方法綁定之後執行。' –

回答

1

設置第三輸入的這樣的值:

function setFullName() { 
    var firstName = $('#hello').val(), 
     lastName = $('#lastname1').val(); 

    $('#fullname').val(firstName + " " + lastName); 
} 

$('#hello, #lastname1').on('keyup', setFullName); 

同樣。我認爲改變事件可能比keyup更好。

+0

完美。 @ user1796823更好的更改事件的任何建議? – zakpucci

+0

只需更改密碼即可在代碼中進行更改,因此setFullName方法在輸入字段發生變化並鬆開焦點後不會在每次按鍵後運行。 – user1796823