在 $(':text').keyup(function() {
中,我尝试将 :text 更改为 :number 不起作用,只有在删除 && $ 时才有效('#number').val() != ""
<script>
$(document).ready(function(event) {
$(':text').keyup(function() {
if($('#input').val() != "" && $('#number').val() != ""
){
$('#submit').removeAttr('disabled');
} else {
$('#submit').attr('disabled', true);
}
});});
</script>
HTML
<form><input type=text id='input'>
<input type=number id='number'><br>
<input type=button id='submit' value='submit'>
</form>
jsfiddle:http://jsfiddle.net/LaLL0v6a/
最佳答案
有 2 个问题。
- 您仅将 keyup 处理程序注册到第一个输入元素,而不是第二个输入元素,因为它的类型是数字
- 使用.prop()设置禁用状态
- 如果您在数字字段中输入非数字值,那么它将保持禁用状态,因为 .val() 将返回空字符串
所以
$(document).ready(function (event) {
$('#input, #number').keyup(function () {
$('#submit').prop('disabled', $('#input').val() == '' || $('#number').val() == "");
});
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<input type=text id='input' />
<input type=number id='number' />
<input type=button id='submit' value='submit' disabled />
关于javascript - Jquery keyup 功能不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26030128/