我想在jQuery上使用简单的表单验证器
$('#clients_name').keyup(function(){
if($('#clients_name').val().length >= 2){
(...)
}
});
但我想查看更多输入(文字,选择......),我不知道如何更改第一行以进行通用操作" keyup" (或其他)表格中的任何输入。这对于input = text很有用,但对于select not ...
$('input[type=text],select').keyup(function(){
if($('#clients_name').val().length >= 2){
(...)
}
if($('#clients_street').val().length >= 2){
(...)
}
});
答案 0 :(得分:2)
只需使用This
$('input[type="text"]').keyup(function(){ // $('select,input[type="checkbox"]').on('change',function(){
if ($(this).val().length >= 2) {
(...)
}
//Or can be
if (this.value.length >= 2) {
(...)
}
});
但.keyup
仅适用于文本框。您需要使用.on('change',function(){..})进行选择框和检查,无线电。
答案 1 :(得分:0)
传递给this
的回调函数中.keyup()
的上下文将被设置为当前的DOM元素。只需参考this
。但select
元素不会触发keyup
事件。所以我会改变你所拥有的东西:
$('input[type=text], select').on("change", function(){
if(this.value.length >= 2){
// do your validation
}
});