1

我想要的只是在用户更改输入值时显示成功消息。如果它以foo用户类型s开始foos,我想显示一条成功消息。

我错过了什么?

简单的 JSFiddle:http: //jsfiddle.net/DdyNN/

HTML:

<input type="text" name="foo" id="foo" value="foo">
<div id="bar"></div>​

JS:

$('#foo').change(function() { 
    $('#bar').html('yay!');
});​
4

5 回答 5

3

离开文本字段时会触发更改事件。我会注册到 keyup 或 keydown 事件。

链接:

于 2012-11-28T10:07:54.007 回答
1

这有效:

$('#foo').keyup(function() {
    if($(this).val()=='foos'){
        $('#bar').html('yay!');
    }
});​
于 2012-11-28T10:07:44.160 回答
1

$.change() 用于选择而不是输入类型。尝试:

var currentvalue = $('#foo').val();
$('#foo').focusout(function(){
if($(this).val() != currentvalue){
$('#bar').html('yay!'); currentvalue = $(this).val();
}
});
于 2012-11-28T10:09:57.613 回答
1

试试这个,

现场演示

prv = $('#foo').val();
$('#foo').keyup(function() {
    if(prv + "s" == $(this).val()) 
       $('#bar').html('yay! success');
    else
       $('#bar').html('yay! failure'); 

        prv = $('#foo').val();
});​
于 2012-11-28T10:09:58.780 回答
1

焦点时在文本框上按下的键上的这项工作

$('#foo').focus(function() { 
   $('#foo').keyup(function(){
     if($(this).val()=='foos')$('#bar').html('yay!');
      });
});​
于 2012-11-28T10:13:05.703 回答