フォームの送信時に(ドラフトフォームとして保存している間)、日付の値(たとえば、12/...のような部分的に入力された日付では無効です)をリセットしようとしています。私は次のことをしました:
$(".datepicker").each(function(){
if(parseDate($(this).val())==null)
{
$(this).val('');
}
});
関数は次のとおりです。
function parseDate(str){
var t = str.match(/^(\d{2})\/(\d{2})\/(\d{4})$/);
if(t!==null){
var d=+t[1], m=+t[2], y=+t[3];
var date = new Date(y,m-1,d);
if(date.getFullYear()===y && date.getMonth()===m-1){
return date;
}
}
return null;
}
テキストフィールドが更新されていても、テキストボックスにバインドされているオブザーバブルの値は更新されていません。私は valueUpdate: 'afterkeydown' も試しましたが、jquery を介してテキストボックスを更新している間、そのイベントは発生しないと思います。
助けてください。