0

これらのイベントの両方を一緒に開始できるかどうか疑問に思っています:

$("input[type=checkbox]").click(function(){
   if($(this).is(":checked"))
   {
       //Value of checkbox
       alert(this.value);
   }
});

$("input[type= 'text']").keyup(function(){
   alert(this.value);
});

.bindを調べましたが、選択した1つの要素(つまり$(p).bind("mouseout mouseenter).doSomething())

私が遭遇している状況は、これらのいずれかが発生したときにいつでも起動する必要がある関数を持っているということです。

4

5 に答える 5

2

試す

$("input[type=checkbox],input[type='text']").on('click keyup', function(){
   // code
});
于 2013-01-17T22:51:10.107 に答える
0

ページ全体のチェックボックス/テキストフィールドが変更されたときに関数を呼び出すことが本当に目的である場合は、おそらく次のようなものが必要です。

$('body').on('change', ':checkbox,:text', function () {


});

:checkboxandセレクターはetc:textよりも優れていることに注意してください。input[type=checkbox]

于 2013-01-17T22:57:42.220 に答える
0

それでも追加の if が必要な場合は、次を使用できます。

$("input[type=checkbox]").click(function(){
   if($(this).is(":checked"))
   {
       //Value of checkbox
       alert(this.value);
       somethingHappened();
   }
});

$("input[type= 'text']").keyup(function(){
   alert(this.value);
   somethingHappened();
});

function somethingHappened() {
   // Do stuff
}
于 2013-01-17T22:51:54.963 に答える
0

以下に示すように、これを実現する 2 つの方法があります。

  1. 「on」メソッドを使用:

    $(document).on('keyup click',"input[type=checkbox],input[type='text']", function(){
       // Do stuff here..
    })
    
  2. イベント後に関数を呼び出します。

    $("input[type=checkbox]").click(doSomething);
    $("input[type= 'text']").keyup(doSomething);
    
    function doSomething() {
    
    }
    
于 2013-01-17T22:52:34.653 に答える
0

おそらく、必要なのは共通の関数だけでしょうか?

$("input[type=checkbox]").click(function(){
   if($(this).is(":checked")) {
       special(this.value);
   }
});

$("input[type= 'text']").keyup(function(){
   special(this.value);
});

function special(val) {
   alert(val);
}
于 2013-01-17T22:55:05.667 に答える