(一) onchange onpropertychange 和 oninput 事件的區(qū)別
1、onchange 事件與 onpropertychange 事件的區(qū)別:
onchange 事件在內(nèi)容改變(兩次內(nèi)容有可能還是相等的)且失去焦點(diǎn)時(shí)觸發(fā)。
onpropertychange 事件卻是實(shí)時(shí)觸發(fā),即每增加或刪除一個(gè)字符就會(huì)觸發(fā),通過(guò) js 改變也會(huì)觸發(fā)該事件,但是該事件 IE 專有。
2、oninput 事件與 onpropertychange 事件的區(qū)別:
oninput 事件是 IE 之外的大多數(shù)瀏覽器支持的事件,在 value 改變時(shí)觸發(fā),實(shí)時(shí)的,即每增加或刪除一個(gè)字符就會(huì)觸發(fā),然而通過(guò) js 改變 value 時(shí),卻不會(huì)觸發(fā)。
onpropertychange 事件是任何屬性改變都會(huì)觸發(fā)的,而 oninput 卻只在 value 改變時(shí)觸發(fā),oninput 要通過(guò) addEventListener() 來(lái)注冊(cè),onpropertychange 注冊(cè)方式跟一般事件一樣。(此處都是指在js中動(dòng)態(tài)綁定事件,以實(shí)現(xiàn)內(nèi)容與行為分離)
3、oninput 與 onpropertychange 失效的情況:
(1)oninput 事件:a). 當(dāng)腳本中改變 value 時(shí),不會(huì)觸發(fā);b).從瀏覽器的自動(dòng)下拉提示中選取時(shí),不會(huì)觸發(fā)。
(2)onpropertychange 事件:當(dāng) input 設(shè)置為 disable=true后,onpropertychange 不會(huì)觸發(fā)。
(二)@change
手動(dòng)輸入或者通過(guò)彈出框選擇之后觸發(fā)
@change='handleChange'
(三)trigger: ‘blur’
trigger: ‘blur’ 表示“當(dāng)失去焦點(diǎn)時(shí)(光標(biāo)不顯示的時(shí)候),觸發(fā)此提示”
此處應(yīng)該是有一個(gè)校驗(yàn),若失去焦點(diǎn),則觸發(fā)trigger進(jìn)行校驗(yàn),若校驗(yàn)不成功,則進(jìn)行提示
---------------------
版權(quán)聲明:本文為CSDN博主「Yoyo_Yan」的原創(chuàng)文章,遵循CC 4.0 by-sa版權(quán)協(xié)議,轉(zhuǎn)載請(qǐng)附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/Learn_inCSDN/article/details/81099663