2010-09-23 52 views
3

我想在输入文本的自动完成请求结果之前执行某种文本字段验证。我的代码:jQuery UI自动完成验证

<script type="text/javascript" src="/scripts/jquery-1.4.2.min.js"></script> 
<script type="text/javascript" src="/scripts/jquery-ui-1.8.2.min.js"></script> 
<script type="text/javascript"> 
    $(function() { 
    $("#vnu").autocomplete({ 
     source: "url", 
     minLength: 1, 
     delay:200, 
     focus: function (event, ui) { 
     $(event.target).val(ui.item.label); 
     return false; 
     } 
    }); 
    }); 
</script> 

<body> 
<input type="text" name="vnu" id="vnu" /> 
</body> 

当有人进入文本字段,以便基本上,我想刻字自动填充请求一个结果查询前检查有效的格式。我已经写了一个函数,它返回true都是false,我不知道从哪里调用它。

回答

5

我终于想出了一个所有感兴趣的工作解决方案,您可以使用搜索事件来运行任何预先请求操作/验证。请参阅下面的代码搜索添加:

$(function() { 
    $("#vnu").autocomplete({ 
    source: "url", 
    minLength: 1, 
    delay:200, 
    focus: function (event, ui) { 
     $(event.target).val(ui.item.label); 
     return false; 
    }, 
    search: function (event, ui) { 
     return some_validation($(this).val()); 
    } 
    }); 
}); 

自动完成搜索事件参考:http://docs.jquery.com/UI/Autocomplete#event-search