我想,當用戶輸入時,打字結束後運行任何東西(例如:AJAX CALL)0000/00/00(它是格式日期),它怎麼樣?
like:
if user typed: 2011/05/04 -> run: $.ajax()...
if user typed: 2011/05 -> not run: $.ajax()...
...
運行$ .ajax()的唯一的事情是真正的輸入這種格式0000/00/00。
我希望你明白我的目的。
尊重。
我想,當用戶輸入時,打字結束後運行任何東西(例如:AJAX CALL)0000/00/00(它是格式日期),它怎麼樣?
like:
if user typed: 2011/05/04 -> run: $.ajax()...
if user typed: 2011/05 -> not run: $.ajax()...
...
運行$ .ajax()的唯一的事情是真正的輸入這種格式0000/00/00。
我希望你明白我的目的。
尊重。
HTML:
<input type="text" name="datefield" onchange="validateField(this)" />
JS:
function validateField() {
var val = this.value;
if (val.length < 10) {
return;
}
if (!val.match(/\d\d\d\d\/\d\d\/\d\d/)) {
return;
}
... do ajax call here
}
你必須小心,因爲這將匹配「等等等等2011/02/04」以及。如果在那裏只允許有日期,你需要做/^\ d \ d \ d \ d \/\ d \ d \/\ d \ d $ /。 –
夠正確,只是一個快速/髒的例子。 –
$("inputTextBoxSelector").keyup(function(e){
if($(this).val().match(/\d\d\d\d\/\d\d\/\d\d/){
$.ajax(....);
return false;
}
})
你可以做...
$('input').change(function(e) {
var val = $(this).val();
if (val.length == 10) {
if(val.match(/^\d{4}\/\d{2}\/\d{2}$/)) {
$.ajax();
}
}
});
您也可以嘗試KEYUP,而不是改變。
他輸入後在哪裏? –