2012-03-29 10 views
2

私は2つのテキストボックスと1つのボタンがあります! これらのテキストボックスのいずれかにテキストを挿入したいとします。 textbox_1をクリックしてボタンをクリックすると、mytextがtextbox_1に表示されます。 textbox_2をクリックしてボタンをクリックすると、mytextがtextbox_2に表示されます。 JavaScriptを使用してこれを行うにはどうすればよいですか? 私を助けてください!私はJavaScriptの新機能です!選択したテキストボックスにテキストを入力JavaScriptを使用

答えて

2

textbox_1textbox_2などの2つのテキストボックスのプットのidのと<button>タグ にonclick='onCLickButton();'を入れて、スクリプトで

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

+0

私はmethode 'focus'がうまくいかないと思います! – KhoiNguyen

+1

ボタンをクリックすると、フォーカスがボタンに変わります。したがって、どちらのテキストボックスにもフォーカスがありません。それがうまくいかない理由です。 – JTeagle

1

INPUTタグのonFocus()属性を見て、フォーカスが最後に与えられたものを追跡することを考えてください。私は宿題のように聞こえるので少し曖昧です。

+0

としてフォームについては

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

ありがとうございました!しかし、もっと説明できますか?私は、複数のテキストフィールド入力を持つHTMLフォームを持っています。ボタンをクリックすると、前にフォーカスしたテキストボックスにテキストが挿入され、テキストボックスにonBlurイベントを使用できますか? – KhoiNguyen

+0

ボタンをクリックすると、テキストボックスを埋めるトリガーになるので、onBlur()は必要ありません。最後にどのテキストボックスにフォーカスがあるかを覚えている場合 - 各ボックスにonFocus()ハンドラを記述し、グローバル変数を使用する - ボタンをクリックしてonClick()を処理すると、テキストを書き込むボックスがわかりますin。 – JTeagle

+0

よかったよ!わかった! – KhoiNguyen

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

1

に次のコードを追加しますそれはきれいな/最もデリケートなソリューションではありませんが、それは動作し、あなたはそれをオフに構築することができますしてくださいあなたのニーズを満たす。このよう

<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> 
関連する問題