2012-02-05 16 views
0

私はクリックされたボタンの価値を得ようとしているか、どのボタンがクリックされたかを判断しようとしています。getElemetByNameを使用してクリックしたボタン名を取得するにはどうすればよいですか?

以下のコードから、すべての値を取得していますが、クリックされたボタンがほしいだけです。

<script type="text/javascript"> 
    function GetCheckedFruits() { 
     var elements = document.getElementsByName ("fruit"); 
     for (var i=0; i < elements.length; i++) { 
      if (elements[i].click) { 
       alert ("The " + (i+1) + ". button is click"); 
      } 
     } 
    } 
</script> 

HTML:私は間違っているつもりです

<input id="Text1" name="fruit" type="button" value="apple" onclick="GetCheckedFruits()" /><br /> 

<input id="Text1" name="fruit" type="button" value="banana" onclick="GetCheckedFruits()" /><br /> 

<input id="Text1" name="fruit" type="button" value="blackberry" onclick="GetCheckedFruits()" /><br /> 

?それthatsの

+1

クリックされたボタン? CLICKEDまたはCLICKABLEを意味しますか?またはチェック?これらのチェックボックスはありますか? html全体を投稿してください。あなたが望むものを見つけ出すのが簡単かもしれません。 – SoonDead

+0

同時にボタンをクリックすると、クリックされたボタンを見つけることができます...クリックしたボタンを見つけることができません...ボタン、OnClick、OnDoubleClick、onMouseOverイベントが....クリックされると、何らかのアクションを実行します... –

+0

'elements [i] .click'はボタンをクリックし、クリックされたかどうかを調べません。すべてのボタンをクリックした.... –

答えて

0

のようにボタンを追加します。

<script type="text/javascript"> 
    function GetCheckedFruits() { 
     var elements = document.getElementsByName ("fruit"); 
     for (var i=0; i < elements.length; i++) { 
      elements[i].onclick = function() { 
       // You can put anything you want here 
       // the variable `this` is the clicked button 
       alert ("The " + this.value + " button is click"); 
      } 
     } 
    } 
</script> 

EDIT:あなたはチェックボックスで作業していると、選択した場合、これは動作しますどの果物を取得しようとしている場合には

<script type="text/javascript"> 
    function GetCheckedFruits() { 
     var elements = document.getElementsByName ("fruit"); 
     for (var i=0; i < elements.length; i++) { 
      if (elements[i].checked == 1) { 
       alert ("The " + elements[i].value + " button is click"); 
      } 
     } 
    } 
</script> 
+0

なぜdownvoteを働いているあなたに感謝しますか?それはおそらく正解です。 – SoonDead

+0

なぜdownvoteがわからない。しかし、関数名を見ると、OPはチェックボックスについて話しているようだ。 – Nirmal

+0

@Nirmalあなたはおそらく正しいでしょう。私は関数名を考慮しませんでした。しかし、質問はかなり明確ではありません。 – Lucius

1

変更

if (elements[i].click) { 
    alert ("The " + (i+1) + ". button is click"); 
} 

if (elements[i].type == 'button') { 
    alert ("The " + elements[i].value + " button is click"); 
} 

EDIT

この

関数GetCheckedFruits(clickedButton){ アラートを( "" + clickedButton.value + "ボタンがクリックされ")てみてください。 } }

、あなたはボタンがクリックされたときにメッセージを通知したい場合、あなたはこのようなイベントを使用する必要があります。この

<input type="button" value="Button1" onclick="{GetCheckedFruits(this);}" /> <input type="button" value="Button2" onclick="{GetCheckedFruits(this);}" /> <input type="button" value="Button3" onclick="{GetCheckedFruits(this);}" />

+0

ありがとうございますが、私はまだボタンをクリックするだけでなく、すべてのブトンのアラートを取得します – user1024610

+0

あなたはクリックされたすべてのボタンをしたいですか?私はクリックするだけでボタンの入手方法 –

+0

、私は意味をなさない3つのボタンを – user1024610

関連する問題