在“邮政编码”的 html 输入中,我通过以下方式附加了 jQuery.autocomplete() 和 mask():
<input type="text" name="PostCode" id="PostCode" size="10" value="<% = vPostCode %>">
<script type="text/javascript">
$(function() {
$("#PostCode").mask("999 99");
$("#PostCode").autocomplete({
source: function( request, response ) {
$.ajax({
url: "./ajax.asp"
, dataType: "jsonp"
, data: {
ajax: "1",
action: "getPC",
maxRows: 10,
contains: request.term
}
, success: function( data ) {
response( $.map( data.PC, function( item ) {
return {
label: item.pCode + ' : ' + item.City + ' : ' + item.Region
, value: item.pCode
}
}));
}
, contentType: "application/x-www-form-urlencoded;charset=1253"
});
}
, select: function( event, ui ) {
$("#PostCode").val(ui.item.zip);
}
, minLength: 2
, selectFirst: true
, delay: 200
});
});
</script>
当光标进入空输入id="PostCode"时出现问题,它被(3个下划线,空格和2个下划线)填充"___ __"
,这是正常的,因为mask()。但由于 minLength: 2 它会导致自动完成工作
我如何告诉 minLength 部分忽略"___ __"
序列,因为只有数值有效,或者换句话说 - 如何仅在用户输入数值时触发 autocomplete(),如果没有输入则忽略?
我正在使用 jQuery 1.71 和 jquery.maskedinput 1.2.2
谢谢你