2010-03-16 52 views
1

我剛開始進入jquery/javascript編程,所以這可能是一個初學者的問題,但我確定似乎無法找到任何有關它。將jquery Calendar選取器與jQuery驗證相結合並讓它們發揮出色?

我在窗體上有一個文本字段。我使用JQuery UI日曆選取器來更好地輸入數據。我還添加了jquery驗證,以確保如果用戶手動輸入日期,它仍然有效。

下面是HTML:

<input class="datepicker" id="Log_ServiceStartTime_date" name="Log_ServiceStartTime_date" type="text" value="3/16/2010"></input> 

和javascript:

$('form').validate(); 
$('#Log_ServiceStartTime_date').rules('add','required'); 
$('#Log_ServiceStartTime_date').rules('add','date'); 

我遇到的問題是這樣的:

如果用戶將在一個糟糕的日期,或者沒有日期,驗證正確啓動並顯示錯誤描述。但是,如果用戶單擊文本框以啓動日曆選擇器並選擇日期,則日期將填充到該字段中,但驗證不會消失。如果用戶點擊文本框然後退出,驗證正確消失。

一旦選擇了日期,我怎樣才能讓日曆選取器啓動驗證程序?

感謝

回答

1

也許這可以幫助:

您選擇一個日期後,此方法將被調用......有了這個,你可以「重新驗證「每次用戶選擇一個日期時你的表單/字段。

允許您在選擇日期選擇器時定義自己的事件 。 函數接收所選日期作爲 文本和日期選擇器實例作爲 參數。這指的是 關聯的輸入字段。代碼示例

提供回調函數以將onSelect事件作爲初始化選項來處理 。

例子:

$('.selector').datepicker({ 
    onSelect: function(dateText, inst) { ... } 
}); 
+1

我結束了做一些非常相似。即使在文本框中,我已經連接到了onchange上,因爲此日期字段加上另一個時間字段正在合併到隱藏字段中。在此期間,我只在日期字段中調用了一個.valid()。我沒有立即找到.valid()。 謝謝! – 2010-03-16 21:15:05