Javascript Jquery验证不为空,并且是表单中的URL
我正在使用下面的fiddle创建一个表单,并检查两个字段是否都为空,以及第二个字段是否是有效的URL。Javascript Jquery验证不为空,并且是表单中的URL,javascript,jquery,html,forms,url-validation,Javascript,Jquery,Html,Forms,Url Validation,我正在使用下面的fiddle创建一个表单,并检查两个字段是否都为空,以及第二个字段是否是有效的URL。 $(':text').keyup(函数(){ if($('first#u name').val()!=“”&&('second#u name').val()!=“”){ $(“#提交”).removeAttr('disabled'); }否则{ $(“#提交”).attr('disabled',true); } }); 但是,只有在添加您正在收听的URL后返回修改第一个字段时,它才会起作
$(':text').keyup(函数(){
if($('first#u name').val()!=“”&&('second#u name').val()!=“”){
$(“#提交”).removeAttr('disabled');
}否则{
$(“#提交”).attr('disabled',true);
}
});
但是,只有在添加您正在收听的URL后返回修改第一个字段时,它才会起作用。因为您的第二个输入是
'url'
类型,所以它不会触发函数
这就是为什么您必须返回到第一个输入。您正在收听的是
':text'
keyup。因为您的第二个输入是'url'
类型,所以它不会触发函数
这就是为什么您必须返回到第一个输入。事件仅在第一个输入字段的键盘上触发。向第二个字段添加一个类似的键控事件,它将起作用仅在第一个输入字段的键控时触发事件。在第二个字段中添加一个类似的keyup事件,它将起作用。问题在于
:text
将jQuery更新到以下位置
$("input").keyup(function() {
if($('#first_name').val() != "" && $('#second_name').val() != "") {
$('#submit').removeAttr('disabled');
} else {
$('#submit').attr('disabled', true);
}
});
问题出在
:text
将jQuery更新到以下位置
$("input").keyup(function() {
if($('#first_name').val() != "" && $('#second_name').val() != "") {
$('#submit').removeAttr('disabled');
} else {
$('#submit').attr('disabled', true);
}
});
只有在文本字段上有键控时,才执行检查(字段为非空)。第二个字段的类型为url。因此,此框上的键控不是执行检查。只有在文本字段上有键控时,才执行检查(字段为非空)。第二个字段的类型为url。所以这个框上的keyup没有执行check。