2012-02-06 68 views
1

我試圖使用jQuery將一個表單<input>字段值複製到另一個表單。很簡單,對吧?好吧,我的代碼無法正常工作,所以我一定在做錯事。下面是我得到了什麼:無法將輸入字段值複製到另一個?

HTML:

<form id="form1"> 
    <input id='one' type='text' /> 
    <input id='two' type='text' /> 
</form> 

<form id="form2"> 
    <input id='three' type='text' /> 
</form> 

<input type='button' id="do" value="Copy" /> 

的jQuery:

$('#do').click(function() { 
    $('#3').html($('#1').html().val()); 
}); 

我的總體目標是讓3與來自1值,只要它進入填充,我想大概是通過將它綁定到onBlur

我在做什麼錯?

編輯:更新ID名稱,因爲我沒有使用數字(但意識到你不能/不應該)使用HTML元素的數字。

+1

警告:HTML IDS不應該是數字。 – bfavaretto 2012-02-06 14:19:57

+0

@bfavaretto:*不應該,但他們工作(至少在Firefox中)。但我同意僅使用DOM ID的數字是一個壞主意。 – Crontab 2012-02-06 14:21:46

+0

對不起,我實際上不使用數字我只是用於說明目的(但意識到這是錯誤的!) – zik 2012-02-06 14:25:52

回答

5

這應該修復它:

$('#do').click(function() { 
    $('#3').val($('#1').val()); 
}); 

不斷更新它:

$('#1').keyup(function() { 
    $('#3').val($(this).val()); 
}); 

或者,您可以用模糊來更新,當用戶將焦點移到遠:

$('#1').blur(function() { 
    $('#3').val($(this).val()); 
}); 

我把這些全部放在jsfiddle上,這樣你就可以玩最好的效果。

http://jsfiddle.net/cefpp/5/

+0

然而,感謝這個,它不會把值放入輸入框?我在這裏有意義嗎? – zik 2012-02-06 14:43:54

+0

@Kiz它適合我...你是什麼意思? – Jonathan 2012-02-06 14:46:26

+0

@Kiz我更新了小提琴的鏈接,請現在看看。 – Jonathan 2012-02-06 14:52:23

0
$('#do').click(function(){ 
    $('#3').val($('#1').val()); 
}); 
0
$('#do').click(function() { 
    $('#3').val($('#1').val()); 
}); 
0

據我所知,編號開頭的號碼是不允許的。嘗試爲您的input元素使用不同的ID。

您還可以使用Firebug或類似的控制檯來檢查您的選擇器或某些功能是否工作。如果出現問題,控制檯也會輸出錯誤信息。

+0

我實際上不使用數字,但我用它來說明目的(不好的例子!),但謝謝 – zik 2012-02-06 14:22:58

0

下面是代碼,幫助我

jQuery(".registration_mailingaddress_sep .city input").val(function(i,origText{ 
    return jQuery('.registration_address_sep .city input').val(); 
}); 
相關問題