1

我需要创建一个简单的验证函数,基本上反映了默认的 jQuery 验证。到目前为止它正在工作,但我无法重复使错误消息在您键入时消失。一旦您单击输入字段,它就会消失,但我希望它在我输入时触发。请您指出正确的功能,我目前正在使用 .change 。

Jsfiddle - http://jsfiddle.net/clintongreen/tLpB4/7/

JS

$('#save_menu').click(function(){
var value       = $('input#new_menu').val();
if (value.length){
        console.log('shows success message');
        $('.success').css('display','block');
        }

else{
        console.log('shows error message');
        $('.error').css('display','block');
        }
});

$('#new_menu').on('change', function() {
        $('.error').hide();
        console.log('hides error message');
});

HTML

<input id="new_menu" type="text" name="new_menu" placeholder="Please enter your menu title" onkeypress="return event.keyCode!=13">
<input name="save_menu" value="Save Menu" type="submit" id="save_menu">
<label class="error" style="display: none;">Please enter a Menu name</label>
<label class="success" style="display: none;">That is correct</label>
4

1 回答 1

2

替换'change''keyup'。这将在每次有人按键时触发事件。

问题:如果有人只是按下 Shift 或 Ctrl 或 Alt,这将触发。

于 2013-02-17T21:24:34.247 回答