一直沒什麼興趣看jQuery,就用自己那點不咋樣的javascript硬撐著,今天寫一個功能時想嘗試一下,用bind注冊事件時發現怎麼都不好使
代碼如下:
$("#txtStation").bind("onpropertychange", GetStationLevel);
然後onclick之類的都試了,沒一個能用的,無奈去翻jQuery的API,都是鳥語我也看不懂具體說了點了,但是發現bind注冊事件都是沒有on的。
發現有change事件,試了試
代碼如下:
$("#txtStation").change(function(){alert('change')});
發現是要等到失去焦點才會激活的跟onchange一樣,我這用不了。
抱著試一試的想法我就吧onpropertychange前面的on刪掉了,反正html不管本身寫著支持不支持的事件只要你寫上去沒准都好使。沒想到還真行。IE是沒問題了,現在不都講跨浏覽器啊火狐下咱也得能用啊。
火狐下都說用oninput事件,我試了試不好使,oninput只在輸入值的才會激發,我這輸入框是帶感應的,就是那種輸一個字就把這個字開頭的都感應出來可以選擇那種,選擇感應的項的話oninput就不激發了。
暫時沒有想到什麼好的解決辦法,我現在加了個浏覽器判斷非ie的話就注冊blur事件,這樣有個問題就是blur實在別的控件活動焦點的時候,txtStation控件注冊的方法是為了填充它緊挨著的一個下拉列表,這樣寫完txtStation的內容後選擇下拉列表時才激發blur,有二次刷新出現,沒啥大影響,只不過用戶第一次點擊無效了。誰有好方法告訴我一聲。
代碼
代碼如下:
if($.browser.msie)
{
$("#<%=txtStation.TextBoxID%>").bind("propertychange", GetStationLevel);
}
else
{
$("#<%=txtStation.TextBoxID%>").bind("blur", GetStationLevel)
}
看了看前面好像沒寫啥內容,標題挺有氣勢,哈哈。寫一下是為怕自己忘記