0

要素のIDを関数に送信して、どのボタンがそれを押したかを知りたい。

<input type="submit" id="foo" onclick="function(abcxyz)" value="abc" />
<input type="submit" id="foo" onclick="function(xyz)" value="x" />

function(str){
    if(str == abcxyz){
        //do this.
    }
    else if(str == xyz){
        //do that.
    }
}

または、可能であれば、値abcまたはxが関数に送信されても​​問題ありません。したがって、str=abcまたはstr=xです。

4

4 に答える 4

1

私があなたの問題を正しく理解していれば...

  1. 関数名がありません
  2. 2つの入力のIDは同じです
  3. タイプにsubmitを使用しても、あなたのケースでは意味がありません
  4. このタスクでは、入力の値は必要ありません。

    <input type="button" id="foo1" onclick="button_click('1')" />
    <input type="button" id="foo2" onclick="button_click('2')" />`
    
    function button_click(str){
        if(str == '1'){
            alert('Button with id foo1 was pressed');
        }
        else if(str == '2'){
            alert('Button with id foo2 was pressed');
        }
    }
    
于 2013-02-12T18:21:21.323 に答える
0

ここにある答えを使用できます

基本的に書く

<input type="submit" onclick="yourFunction(this.id)" id="abc" value="Button abc" />
于 2013-02-12T18:17:12.677 に答える
0

関数には名前が必要です。

試す:

<script type="text/javascript">
    function whichButton(str){
        if(str == 'abc'){
            alert('abc was clicked');
        }
        else if(str == 'x'){
            alert('str was clicked');
        }
    }
</script>
<input type="submit" id="foo" onclick="whichButton(this.value);" value="abc" />
<input type="submit" id="foo1" onclick="whichButton(this.value);" value="x" />
于 2013-02-12T18:17:27.857 に答える
0

問題の解決策として、下記のコードスニペットを参照してください

例えば

  <input type="submit" id="foo" onclick="function(this.value)" value="abc" />
  <input type="submit" id="foo" onclick="function(this.value)" value="x" />

上記のコードスニペットでは、このオブジェクトはイベントソース、つまり送信ボタンを参照します

于 2013-02-12T18:18:21.113 に答える