我有自动完成工作的验证。
http://skoizumi.com/autocomplete/index.html
var ac = $( "#searchtext" ).autocomplete({
source: "testdata.php",
minLength: 2,
select: function( event, ui ) {
console.log( '3');
},
close: function( event, ui ) {
console.log( 'closing.' );
}
});
jQuery.validator.addMethod("contractorName", function (value, element) {
var result = false;
var contractorName = $("#searchtext" ).val();
//validating the specified field has a valid name
$.ajax({
type: "GET",
url: "/autocomplete/return2.php",
async: false,
dataType: "json",
data: {
'searchtext': $( "#searchtext" ).val()
},
complete: function(test){
res = JSON.parse( test.responseText );
console.log( res );
result = res.result;
}
});
return result;
}, "Specified Contractor doesn't exist");
我这样做是为了当你从列表中选择“European Nightjar”或输入相同的东西时,它应该验证并返回true,否则它应该显示一条错误消息,说“指定的承包商不存在。”
但是,如果文本框中包含无效数据并从列表中选择,则会返回错误,因为在从列表中进行选择之前会进行验证。
有没有办法让从列表中选择时不必进行验证?
答案 0 :(得分:0)
这是来自jQuery演示站点:
$( ".selector" ).autocomplete({
select: function(event, ui) { ... }
});
为select:添加一个不同的函数,当你从下拉列表中选择时选择fires, 而不只是把console.log('3');验证这里的文字