HTML元素的onpropertychange的作用

      最近在做一個.NET項目的時候,需要響應TextBox控件的OnTextChange事件,但遇到的一個問題是:當我通過頁面上的javascript來改變TextBox控件值的時候,並不觸發OnTextChange。也就是我們通過程序而不是通過頁面響應,爲TextBox改變值,這時候OnTextChange是不起作用的。

      想了想,TextBox扔到頁面上之後最終也就是html的input元素,而input的onchange在屬性值改變時還必須使得當前元素失去焦點(onblur)纔可以激活該事件,原來如此。後來查了查資料,可以用onpropertychange來解決。在IE下,當一個HTML元素的屬性改變的時候,都能通過onpropertychange來捕獲。

      舉一個常見的例子:

      請輸入圖片地址: <input type="text" name="mytext" value="" onpropertychange="document.images['img'].src=this.value;" /> <img id="myimg" src="/img/common/logo.gif" alt="" />

       當text框中的內容被改變時,圖片就會立刻被顯示出來。而如果用onchange時,改變其值時還需用鼠標單擊空白或其他地方使input元素失去焦點(onblur)才能激活該事件,圖片顯示纔會被改變!

     

發佈了30 篇原創文章 · 獲贊 6 · 訪問量 14萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章