js如何通过点击button来触发编辑器的回车事件?

比如现在需要通过点击button来在textarea实现回车键功能

阅读 4.2k
6 个回答

找到更好的方式进行解决了,之前思维局限在了ace editor一次性插入代码包括换行符和回车符,代码和回车符一起插入,回车符就会只有换行的作用,而不会自动缩进。比如:
editor.insert("if(){rn}");不会自动缩进。
editor.insert("if(){");editor.insert("rn");editor.insert("}");这样就会自动缩进。

点击按钮,在方法内监听键盘事件.然后处理

如果你用JQ的话可以用trigger方法传送门

写一个按钮的监听事件,监听到按钮被单击触发twxtarea的回车事件即可。

点击button,获取textarea内容加"\n",写回textarea

模拟按键事件就要疯狂考虑浏览器兼容性问题了,我就知道一个

evtObj = document.createEventObject();  
evtObj.keyCode=keyCode  
el.fireEvent('on'+evtType, evtObj);  

而且有一个问题,点按钮的时候textarea不会失去焦点吗,可能得重新聚焦才能触发模拟回车吧

以上这个方法貌似IE支持,其他浏览器不明

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题