作者BBSealion (海獅)
看板Ajax
標題Fw: [問題] 有關onkeyup,onmouseup的觸發
時間Wed Nov 21 11:44:05 2012
一個怪問題問問大家
我最近使用一些js的open source
裡面設計在textarea輸入文字之後,就會根據輸入觸發別的動作
但是,我用自己的function去改textarea的字的時候
如: document.myForm.mytextarea.value = "abcdefg";
他字雖然變了,但卻不會觸發應該有的其他動作
我看了一下原始碼他似乎是用onkeyup和onmouseup去觸發那些動作
所以我沒有經由鍵盤或滑鼠就直接改變其值的話,就無法觸發這些動作
想問一下有沒有可能用代碼的方式(例如換行等於\n ?) 去觸發onkeyup或onmouseup呢?
當然我也可以去研究它原始碼從哪裏叫function的
但有點亂我怕自己亂接未來會有bug...如果能直接照規矩觸發就比較安全
---
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 220.133.61.45
※ 編輯: BBSealion 來自: 220.133.61.45 (11/21 11:44)
1F:→ transmituni:有試過去偵測鍵盤按到enter鍵?~不太確定是否是您要的 11/21 12:08
2F:→ BBSealion:試過\r和\n\r都沒有效果(但都能達到基本的換行效果XD) 11/21 12:22
3F:→ BBSealion:\r\n也是 (還有其他的可能嗎?) 或是有哪個function是跟 11/21 12:23
4F:→ BBSealion:據只要文字有變動就會呼叫的嗎? 我可以試著塞進去看看 11/21 12:23
5F:→ BBSealion:textarea.onchange()好像沒效ORZ 11/21 12:24
6F:推 LaPass:好像有看過.... 11/21 12:30
8F:→ transmituni:再把偵測到的要做的事件換成你要做的 11/21 14:23
9F:→ transmituni:不確定是否是您要的 11/21 14:23
10F:→ Canboo:自己寫的function跑完再直接onkey...的function 11/21 14:28
11F:→ legnaleurc:對呀,為什麼不直接呼叫 callback function? 11/21 16:47
12F:→ BBSealion:好問題 我直接call那個function他不會動 他用了個變數 11/21 17:04
13F:→ BBSealion:a到處都是a我找不到他原本怎麼定義他的 11/21 17:06
14F:→ BBSealion:是可以研究一下他的邏輯啦 只是有點懶XD 想說會不會有 11/21 17:07
15F:→ BBSealion:很簡單的做法 如果沒有的話當然還是花點時間研究了... 11/21 17:07
16F:推 mrbigmouth:用jQuery的trigger模擬看看 11/22 11:19
17F:→ BBSealion:對我今早用trigger成功了XD 感謝各位! 11/22 11:53
18F:推 mrbigmouth:因為呼叫callback function時的this不同或event obj沒 11/22 17:15
19F:→ mrbigmouth:丟吧 11/22 17:15