2014-02-13 60 views
0

我有一個按鈕將一個字母傳遞給文本框,每次按下按鈕時,它都會將該字母放在文本框中。我希望能夠將字母添加到文本框中。如果我按「Q」然後「E」我想讓文本框包含QE。現在如果我按下Q,它包含Q,但是我按下E,它會用E代替Q,我需要兩個。還需要一個清除按鈕來擺脫所有這些。JavaScript如何將字符一起添加到文本框中

function reply_click(clicked_id) 
{ 
var AllLetters = '' 
    AllLetters = AllLetters + clicked_id; 
document.getElementById('letters').innerHTML="Letter: " + AllLetters; 
var FindItData = 'findIT.asp?letters='+clicked_id; 
//window.open(FindItData,"_self"); 

} 

div>Press letters to find items:</div> 
    <div> 
<button id="Q" onClick="reply_click(this.id)">Q</button> 
<button id="W" onClick="reply_click(this.id)">W</button> 
<button id="E" onClick="reply_click(this.id)">E</button> 

...

+0

你想在文本框的值設置爲一個數組,並追加在該數組隨後的按鈕點擊。 – briskovich

+0

只需附加新值:'document.getElementById('letters')。innerHTML + = clicked_id;' – RobG

回答

0

每當你點擊你你初始化變量AllLetters按鈕。

所有你需要做的就是把var AllLetters =''放在函數的外面,這樣你就不會失去被單擊字母的軌跡。

0

一個更清潔的方式來實現你想要的是簡單地將關鍵追加到文本值briskovitch建議:

<script type="text/javascript"> 
function reply_click(clicked_id) 
{ 
    document.getElementById('letters').value += clicked_id; 
    var FindItData = 'findIT.asp?letters='+clicked_id; 
    //window.open(FindItData,"_self"); 
} 
</script> 

<div>Press letters to find items:</div> 
<input type="text" id='letters' value ="Letter: " /> 
<button id="Q" onClick="reply_click(this.id)">Q</button> 
<button id="W" onClick="reply_click(this.id)">W</button> 
<button id="E" onClick="reply_click(this.id)">E</button> 
相關問題