2014-10-02 82 views
0

我尝试检测输入文本上的实时文本更改。这里是我的尝试:更改文本的JQuery事件

此代码适用于JQuery包含版本。

<script src="http://code.jquery.com/jquery-1.9.0.js"></script> 
<script src="http://code.jquery.com/jquery-migrate-1.0.0.js"></script> 

此代码仅用于表单。就像你会看到的,一个带有2个输入文本(id和密码)和一个按钮的简单表单。

<form method='post'> 
    <input type="text" name="id" id="id" placeholder="mail adress" /> 
    <input type="text" name="pass" id="pass" placeholder="password" /> 
    <input type="submit" name="login" id="login" value="login" />    
</form> 

最后,JQuery代码似乎不工作。我把它放在<body></body>里,里面还包含我的表格。

<script type='text/javascript'> 
    $('#id').on('input', function() { 
     alert('text changed'); 
    }); 
</script> 

这段短代码似乎不起作用。我跟着precedent question asked in this site,但这个解决方案并没有帮助我。

最奇怪的是,当我将这段代码复制粘贴到代码片段中时,它却起作用,但不会与位于我的PC中的简单HTML文件粘贴。所以我认为问题来自我的jQuery包括,可能...

有人可以点亮我的灯笼?

+1

可能是,你需要把在[DOM准备处理]内(http://learn.jquery.com/using-jquery-core/document-ready/) – 2014-10-02 16:32:28

+0

这正是解决方案。非常感谢你@Arun P Johny!我正在尽快提出解决方案 – 2014-10-02 16:34:30

回答

0

感谢阿伦P约翰尼拉,解决办法是直接把我的处理程序进入就绪。解决方法如下这样:

<script type='text/javascript'> 
    $(document).ready(function() { 
     $('#id').on('input', function() { 
      alert('text changed'); 
     }); 
    });   
</script>