我在輸入元素中使用了「ng-model」,並使用chrome檢查器觀察該元素。但是input元素的每個onxxx屬性(包括onchange)都是null。那麼,AngularJS如何捕獲用戶輸入觸發的「onchange」事件?AngularJS如何在內部捕捉像'onclick','onchange'這樣的事件?
回答
如果在Chrome的事件監聽器選項卡,你檢查標準的文本輸入元素(NG-模型附後),你會看到它有附加兩個事件偵聽器:$destroy
和input
。
角,默認情況下,監聽input
事件,並且,如果它不是由瀏覽器的支持,它會回落到change
事件。
事件綁定jQlite的綁定方法(除非你也有一個完整的jQuery包括,在這種情況下,其綁定方法將接管)。
您可以檢查自己的示例輸入元素位於input [email]指令文檔頁面。
現在它是完全清楚。謝謝! – firia2000
爲什麼jquery沒有使用val()!!!來激發輸入事件?你還會如何正確地傳播這種改變? – tommybananas
@ snowman4415像這樣:http://stackoverflow.com/a/17110709/1095616 – Stewie
可以使用附加事件偵聽器的任何DOM節點:
node.addEventListener(eventName的,listenerMethod方法,useCapture)
當你node.onchange的方法,使用addEventListener分配之前,你必須將事件監聽器附加到事件「更改」或「單擊」。
參見:https://developer.mozilla.org/en-US/docs/DOM/EventTarget.addEventListener
這個問題是關於特別是angularjs,而不是dom事件處理程序 –
那麼,AngularJS仍然是JavaScript與DOM的權利?所以角度做一些使用DOM的事件監聽器,我不知道角度,但我想事件被附加到文檔元素,他們使用事件冒泡來過濾哪個目標將接收DOM事件。 – KKetch
在基地上,是的,它必須。但事實上,它並不像你「假設」那樣工作。它使用髒檢查模型來查找發生了什麼變化。你可以閱讀更多關於它在http://stackoverflow.com/questions/9682092/databinding-in-angularjs –
- 1. 捕捉onclick adsense事件?
- 2. 如何在Android上捕捉圖像捕捉事件?
- 3. 捕捉onClick事件在ListView,不onItemClick
- 4. 如何捕捉onchange事件在多個文本字段
- 5. 如何捕捉Facebook「不像」事件?
- 6. 如何捕獲onchange事件
- 7. 如何捕捉圖像上的uiscrollview內的事件
- 8. 如何捕捉dojox.mobile.view事件?
- 9. 如何捕捉片段中的onclick事件
- 10. 捕捉事件
- 11. 捕捉事件
- 12. 如何捕捉dropzonejs插件的事件
- 13. 如何在javascript中捕捉「History.Back」事件?
- 14. 如何在Opera上捕捉onmousewheel事件?
- 15. 如何在javascript中捕捉dragend事件?
- 16. 如何捕捉JTA事務內部拋出的異常?
- 17. 在ZK中,我的GenericForwardComposer類中,如何捕獲所有onClick和onChange事件?
- 18. 如何捕捉CSS樣式的onload事件?
- 19. 在angularJS中捕捉部分關閉
- 20. 如何捕捉RichEdit上的OnScroll事件?
- 21. WPF如何捕捉的ContextMenuClosing事件
- 22. 如何捕捉視頻的事件ExitFullScreen?
- 23. 如何捕捉父div上的事件?
- 24. 如何捕捉PHP中的exit()事件?
- 25. 如何捕捉內部異常?
- 26. 如何捕捉內部異常
- 27. 在VBScript中捕捉事件
- 28. 如何捕捉到的圖像保存到內部存儲
- 29. 如何在php中捕捉外部事件?
- 30. '底層'div捕捉'外部'事件
你可能想檢查http://stackoverflow.com/questions/9682092/databinding-in-angularjs –
@fastreload謝謝!我剛剛讀過那篇文章,但仍不清楚。根據那篇文章,AngularJS使用$ apply()和$ digest()進行髒檢。但是,誰稱這些功能? 'angular'模塊是否使用類似setInterval()的方式進行輪詢? – firia2000
有幾個事件觀察者發起「摘要」階段,Stewie的答案有一些細節。 –