0

$('body').click 関数は Datepicker (jquery) beforeShow メソッドの前に動作しています。Datepicker (jquery) の最初の onselect メソッドをトリガーするにはどうすればよいですか。つまり

   $('body').click(function (evt) {

    // do something
    }

 $('#UxDatePickerFrom').datetimepicker({

beforeShow: function (inst) {
                // do something on select
            })

しかし、 datepicker を選択すると、ボディクリックが最初に機能しますが、これは望ましくありません。

4

2 に答える 2

0

イベント ハンドラーは、登録された順序で起動します。click日時ピッカーが表示された後に本体ハンドラーを起動する場合は、それらをインスタンス化する順序を逆にします。

$('#UxDatePickerFrom').datetimepicker({
    onSelect: function (inst) {
        // do something on select
    }
});

$('body').click(function (evt) {
   // do something
}
于 2013-07-01T12:29:37.763 に答える
0

$('body').click();は、それを含むすべての要素のグローバル クリック ハンドラーであるため、本文または日付ピッカーをクリックすると、関数が実行されます。

あなたの解決策は、クリックハンドラーを変更して、すべてではなく、より特殊な要素のグループに影響を与えることです。

$("#yourspecificelement").click(function() {
    // ....
});
于 2013-07-01T16:09:37.403 に答える