2016-11-10 5 views
0

日付のテキストボックスがあるので、ユーザーはdatepickerを使用して日付を選択できます。テキストボックスが更新される前にonblurが呼び出されています

<asp:TextBox runat="server" ID="txtDate" CssClass="dateonly" Width="80px" onblur="CheckIfDateChanged(this.value)" ></asp:TextBox> 

はその後、私のjQueryので、私はそれが私が追加になっている日付を確認したい:私は日付が、私はテキストボックスにonblurを追加しましたので、変更されますかどうかを知りたい

enter image description here

警告:テキストボックスは、実際に新しい日付に変更する前に、

function CheckIfDateChanged(date) 
{ 
    alert(date); 
} 

onblurが呼び出されるように思われます。したがって、現在の日付が28/10/2016で、それを29/10/2016に変更すると、アラートに28/10/2016が表示されます。その後、警告メッセージを閉じると日付が変わります。

datepickerから新しい日付を選択したときに日付が変更されるかどうかを確認するにはどうすればよいですか?

+0

'input'をクリックするとフォーカスが得られ、datepickerからカレンダーが表示され、入力からフォーカスが移動します。これにより、入力はフォーカスを失い、onblurを呼び出す – Rajesh

+1

'onblor()'の代わりに 'onchange()'を使うので、その後テキストボックスが変更されると、 – Bharat

+0

が呼び出されます@BharatPatidar 'onchange()'は、私は、日付ピッカーから日付を選択します。日付をテキストボックスに入力すると呼び出されます – user123456789

答えて

0

onSelectイベントを使用できます。

$(".dateonly").datepicker({ 
    onSelect: function(date) { 
    display("Date: " + this.value); 
    } 
}); 

はあなたがtextboxonchangeイベントを使用することができますhttps://api.jqueryui.com/datepicker/#option-onSelect

0

続きを読みます。このイベントは、テキストボックスの値が変更されたときに発生します。

<asp:TextBox runat="server" ID="txtDate" CssClass="dateonly" Width="80px" onchange="CheckIfDateChanged(this.value)" ></asp:TextBox> 

OR

あなたがdatepcikerの「onSelect`にイベントをバインドし、

$(".dateonly").datepicker({ 
    onSelect: function(date) { 
    alert(date); 
    } 
}); 
+0

datepickerから日付を選択すると 'onchange()'が機能しません。テキストボックスに日付を入力すると呼び出されます – user123456789

0

は、私は同様の問題に自分自身を走ってきましたonfocusout

を使用してみてください、あなたの関数を呼び出すことができます。私はちょうどonfocusoutを、私が呼びたい機能と共に要素属性に追加しました。

関連する問題