2016-11-10 16 views
0

我有一個日期文本框,以便用戶可以使用日期選擇器選擇日期。在更新文本框之前調用onblur

enter image description here

我想知道,如果日期被改變了,所以我說的onblur到文本框:

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

然後在我的jQuery我想檢查它越來越所以我加的日期一個提醒:

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

onblur似乎被調用之前,文本框實際上改變與新的日期。因此,如果當前日期爲2016年10月28日,並將其更改爲2016年10月29日,則該警報將顯示2016年10月28日。然後在關閉警報消息之後日期發生變化。

如何從日期選擇器中選擇新日期時知道日期是否發生了變化?

+0

當你點擊'輸入'時,它會獲得焦點,然後從日期選擇器開始,日曆出現並從輸入獲取焦點。由於這個原因,輸入失去焦點並且調用onblur – Rajesh

+1

使用'onchange()'而不是'onblor()',所以每當你的文本框被改變之後它將調用 – Bharat

+0

@BharatPatidar onchange()'不工作if我從datepicker中選擇日期。如果我將日期輸入到文本框中,它將被調用 – user123456789

回答

0

可以使用onchange事件的textbox。當文本框的值被改變時,這個事件被觸發。

<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添加到元素屬性以及我想要調用的函數中。

相關問題