0

アプリケーションにいくつかの日付コントロールがあり、JQuery UI カレンダー コントロールをダイアログ イメージ セレクターとして追加しました。

<input type="text" id="punchStartDate" class="EndDateClass" name="punchStartDate" />

カレンダー コントロールを追加する方法は次のとおりです。

 jQuery("input.EndDateClass").datepicker({
        showOn: "button",
        buttonImage: "../images/calendar.gif",
        buttonImageOnly: true,
        dateFormat: dateFormat.replace("DD", "dd").replace("D", "d").replace("MM", "mm").replace("M", "m").replace("yyyy", "yy"),
        beforeShow: function (input, inst) {
            if (jQuery(this).is(':disabled')) {
                return false;
            }
        }
    }); 

これは問題なく動作しますが、onchange イベントも追加したいくつかのコントロールがあります。これらを使用すると、カレンダー コントロールは引き続き入力を表示して入力しますが、日付が選択されてもダイアログは消えません。これは定期的にしか発生しないため、競合状態が疑われます。

これを引き起こす入力は次のとおりです。

<input type="text" id="punchStartDate" class="EndDateClass" name="punchStartDate" onchange="CheckWeekdays.SetCheckBoxes('punch');" /> 

onchange イベントがダイアログの hide イベントをブロックしていると思われますが、これを修正する方法がわかりません。競合する JavaScript 呼び出し間のこの競合状態を修正するにはどうすればよいですか?

4

1 に答える 1