2012-03-21 180 views
7

我正在使用jquery。Onchange輸入事件未在jquery上觸發

而我有一個窗體中的文本輸入,我想處理更改事件。

$("#my_input").change(function(){alert('123');}); 

的事件是,當我手動編輯的字段標準點火的,但是當我用一個腳本(有時與外部腳本)改變字段的值,這是行不通的。

有沒有解決方法?

並提前致謝。

回答

11

更改事件不旨在檢測程序化更改。設定值時,您可以手動觸發事件,雖然:

$('#my_input').trigger('change'); 

快捷:

$('#my_input').change(); 
+1

是那裏的火災時輸入編程方式更改的事件? – Youcef04 2012-03-21 13:10:28

+0

@ Youcef04:不,JavaScript不支持這種監視。其他一些語言的結構允許這樣的東西,但不能用JavaScript。 – jwueller 2012-03-21 13:12:38

+0

非常感謝,所以沒有必要看別處。 – Youcef04 2012-03-21 14:37:26

0

消防他們手工,使用以下兩種功能之一:

$('#my_input').trigger('change'); 
$('#my_input').change(); 
0

你可以使用實況/代表來約束您的變更事件

$("#my_input").live('change',function(){alert('123');}); 
0

這裏是代碼

$("input[type='text']").change(function() { 
    // check input ($(this).val()) for validity here 
});