2014-02-13 33 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> 
相关问题