我在表单中有多个文本输入,并希望验证每个输入,如下所示:
$(document).on('keyup', 'input [type="text"]', function (){
var html = '<span class="error">Se necesita una <b>descripcion mayor a 3 letras!</b>!</span>';
var val = $(this);
alert(val.val());
//if it's NOT valid
if(t.val().length < 4){
$(html).insertAfter(val);
}
//if it's valid
else{
val.find('.error').remove();
}
});
Run Code Online (Sandbox Code Playgroud)
我正在对每个输入执行一个键盘事件,并使用它来引用用户输入的输入,但是没有验证发生并且没有警告值,所以我猜这个函数没有触发是输入选择器右?这是使用"this"的正确方法吗?
input [type="text"]不是正确的选择器,它应该是input[type="text"]或input:text
空间很重要.它正在寻找input具有[type=text]属性的元素的子元素.
你可能会更好地重新布置你的活动:
$("input:text").on("keyup", function(e) {
var $input = $(this);
if($input.val().length < 4) {
var $error = $("<span>", {
html = "Se necesita una <b>descripcion mayor a 3 letras!",
"class" = "error"
});
$error.insertAfter($input);
}
else {
$input.siblings(".error").remove();
}
});
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1271 次 |
| 最近记录: |