2012-03-29 47 views
2

我有2個文本框和1個按鈕! 我想插入文本到其中一個文本框。當我點擊textbox_1並單擊按鈕時,mytext將出現在textbox_1。當我點擊textbox_2並單擊按鈕時,mytext將出現在textbox_2。 如何使用JavaScript來做到這一點? 請幫幫我!我是JavaScript新手!插入文本到選定的文本框使用Javascript

回答

2

將兩個文本框爲textbox_1textbox_2的ID和把onclick='onCLickButton();'<button>標籤 寫下面的代碼腳本

var text_to_be_inserted = "sample"; 
function onCLickButton(){ 
    document.getElementById("textbox_1").value=''; 
    document.getElementById("textbox_2").value=''; 
    if(document.getElementById("textbox_1").focused){ 
     document.getElementById("textbox_1").value=text_to_be_inserted; 
    } 
    else if(document.getElementById("textbox_2").focused){ 
     document.getElementById("textbox_2").value=text_to_be_inserted; 
    } 
    else{ 
     // do nothing 
    } 
} 

編輯

請接受我的道歉實際上我習慣於使用這些函數,因爲我有我自己的具有這些功能的js文件。

請在<input>標籤添加onfocus='onFocusInput(this);'和腳本

function onFocusInput(object){ 
    document.getElementById("textbox_1").focused=false; 
    document.getElementById("textbox_2").focused=false; 
    object.focused = true; 
} 
+0

它不工作,我專注於textbox_2,但當我點擊按鈕,文本出現在textbox_1!幫我! – KhoiNguyen 2012-03-29 08:30:58

+0

我認爲方法'重點'不起作用! – KhoiNguyen 2012-03-29 08:35:06

+1

當您單擊該按鈕時,焦點會更改爲該按鈕 - 所以文本框都不再有焦點。這就是爲什麼它不起作用。 – JTeagle 2012-03-29 09:20:16

1

查看INPUT標籤的onFocus()屬性 - 並考慮跟蹤上次關注的內容。我有點模糊,因爲這聽起來很像作業。

+0

謝謝!但你能解釋更多嗎?我有一個帶有多個文本字段輸入的html表單。當我點擊按鈕時,它會將文本插入到我之前關注的文本框中,我可以使用onBlur事件處理我的文本框嗎? – KhoiNguyen 2012-03-29 09:12:36

+0

單擊該按鈕是填充文本框的觸發器,因此不需要onBlur()。如果您記得哪個文本框最後得到了重點 - 通過爲每個框編寫onFocus()處理程序並使用全局變量 - 然後當您單擊該按鈕並處理它的onClick()時,您將知道要編寫文本的框in。 – JTeagle 2012-03-29 09:19:22

+0

非常感謝!我知道了! – KhoiNguyen 2012-03-29 09:47:20

1
<html> 
<head> 
    <script type="text/javascript"> 
     var index = false; 
     var text = "This text shifts to text box when clicked the button"; 

     function DisplayText(){ 
      if(!index){ 
       document.getElementById("txt1").value = text; 
       document.getElementById("txt2").value = ""; 
      } 
      else{ 
       document.getElementById("txt2").value = text; 
       document.getElementById("txt1").value = ""; 
      } 

      index = index ? false : true; 
     } 
    </script> 
</head> 
<body> 
    <input type="text" id="txt1"/> 
    <input type="text" id="txt2"/> 
    <input type="button" value="Change Text" onclick="DisplayText()"/> 
</body> 
</html> 
+0

非常感謝!我知道了! – KhoiNguyen 2012-03-29 09:48:29

1

添加以下代碼,是不是最漂亮的/最精緻的解決方案,但它的工作原理,你可以建立過它滿足您的需求。

<script> 
var field = 0; 
    function addText(txt){ 
    if(field === 0) return false; 
    field.value = txt; 
    } 
</script> 

對於形式如

<form> 
<input type="text" name="box1" id="box1" onfocus="field=this;" /> 
<input type="text" name="box2" id="box2" onfocus="field=this;" /> 
<input type="button" onclick="addText('Hello Thar!');" /> 
</form> 
相關問題