2

私のアプリケーションでは、jquery datepicker と Rails クライアント側の検証を実装しました。しかし、日付を選択した後でも、「空白にすることはできません」というエラーが表示され、フォームが送信されません。日付を選択した後に検証に合格するにはどうすればよいですか。

以下のdatepickerのコードを見つけてください。

jQuery(document).ready(function($){  
$('#project_start_date').datepicker({ dateFormat: "yy-mm-dd",onSelect: function(selected) {

$("#project_end_date").datepicker("option","minDate", selected)

}
});
4

2 に答える 2

1

Client Side Validations wikiで説明されているように、このオプションを追加して、jQueryUI DatePicker を Client Side Validations と互換性を持たせることができます。

onClose: function(dateText, inst) { $(inst.input).change().focusout(); }

あなたの例では:

$('#project_start_date').datepicker({
  dateFormat: "yy-mm-dd",
  onSelect: function(selected) { $("#project_end_date").datepicker("option","minDate", selected) },
  onClose: function(dateText, inst) { $(inst.input).change().focusout(); }
})
于 2013-09-26T21:29:03.560 に答える
0

主な問題は、フォーカスが外れたときに検証がトリガーされることです...回避策として、データピッカーを閉じた後にフォーカスイベントを手動でトリガーできます

$('#project_start_date').datepicker({ dateFormat: "yy-mm-dd",onSelect: function(selected) {

$("#project_end_date").datepicker("option","minDate", selected)

}, onClose: function(){
      //workaround to trigger javascript validation
      $(this).focusout();
}
});
于 2013-03-14T10:07:35.870 に答える