2014-10-02 81 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>