角4更改事件工作範圍是工作的罰款與如下面變化事件沒有在角4
<input type="text" (change)="updateData($event)"/>
但是當我們如下寫代碼然後但這並沒有工作,輸入型文本。
<span id="fname" (change)="updateData($event)"></span>
誰能給我垃圾洞察力的這種行爲,如果可能的話,最好的方式來達到同樣的。
角4更改事件工作範圍是工作的罰款與如下面變化事件沒有在角4
<input type="text" (change)="updateData($event)"/>
但是當我們如下寫代碼然後但這並沒有工作,輸入型文本。
<span id="fname" (change)="updateData($event)"></span>
誰能給我垃圾洞察力的這種行爲,如果可能的話,最好的方式來達到同樣的。
對於contenteditable
您需要使用input
事件。 Here is什麼文件說:同步時 的值,或有修改
的DOM輸入事件被觸發......此外,它觸發對CONTENTEDITABLE編輯當 其內容被改變。在這種情況下,事件的目標是 編輯host元素...
input
但是被觸發的每個變化,而change
被觸發focusout
,所以你需要結合這些。
class Component {
tmp = ''l
updateTmpData(e) {
this.tmp = e.target.textContent;
}
updateData() {
// use this.tmp
}
}
...
<span id="fname" (input)="updateTmpData(e)" (focusout)="updateData()"></span>
的替代品,我們使用了一些什麼相同的解決方案,你已經通過比較新舊值建議。只是想知道如果有更好的方法。 –
爲什麼要聽點擊事件? –
我們也可以使用focusin事件,我想要使用輸入事件,因爲我不想在每個字符輸入上發送數據。 –
您如何期待非交互式元素觸發'change'事件?只有在用戶的輸入發生變化時纔會觸發更改事件。例如,在輸入元素中輸入內容。 – cyrix
我爲span做了contenteditable =「true」。 –
什麼阻止你使用輸入?你試圖在一個可憐的小「span」元素上強制執行一些功能,而這並不是爲了這麼強大的任務。 – cyrix