页面有多个文本框录入控件,如何给指定控件插入html

liu_dashi 2013-04-03 11:11:57
如题:在一个页面有多个<textarea>,在页面中点击某个<a>标签时,如何给指定的某个<textarea>插入文本。我本来的思路是得到控件焦点,然后判断是哪个控件,最后插入文本。可是如果我焦点定位于一个<textarea>,然后再点击<a>链接,这时候var act = document.activeElement.id;这个语句得到的焦点是<a>控件的Id,我想问的是如何得到刚才定位的<textarea>的Id呢?
...全文
307 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
ftiger 2013-04-03
  • 打赏
  • 举报
回复
嗯,当然,不过你可以用jq等框架批量加。
liu_dashi 2013-04-03
  • 打赏
  • 举报
回复
那是不是要在这些文本框空间上 都要加上 focus事件?
ftiger 2013-04-03
  • 打赏
  • 举报
回复
那你要找个地方存放上一次的焦点。一个全局变量或别的什么。
dylwildwolf 2013-04-03
  • 打赏
  • 举报
回复
1 给一下代码吧,你看下是不是符合要求 2 用一个全局的Array对象保存最后点击的textarea,当点击链接的时候,在里面显示点击链接的name js代码如下:(用了jquery,请在页面引入) <script type="text/javascript"> var focusObjects=new Array();//装载最后获取焦点的文本框 $(function(){ $("[name^='t']").focus(function(){ focusObjects.push(this); if(focusObjects.length>1){ focusObjects.shift(); } }); $("[name^='a']").click(function(){ if(focusObjects.length<1){ alert("请先选择文本框"); }else{ var lastTextArea=focusObjects.pop(); focusObjects.push(lastTextArea); $(lastTextArea).val(this.name); } }); }); </script> html页面代码如下: <body> <textarea rows="20" cols="2" name="t1"></textarea> <textarea rows="20" cols="2" name="t2"></textarea><br/> <a href="#" name="a1">按钮1</a> <a href="#" name="a2">按钮2</a> </body>
liu_dashi 2013-04-03
  • 打赏
  • 举报
回复
不知道怎么解决此问题 先给分结贴
ftiger 2013-04-03
  • 打赏
  • 举报
回复
"Editor"带这个字样的一般会改了textarea,改成iframe编辑器,这个要去看xhEditor源代码才知道如何做了。
liu_dashi 2013-04-03
  • 打赏
  • 举报
回复
引用 5 楼 dylwildwolf 的回复:
1 首先,给textarea 和a 都编号 用id就行 比如 t1 t2和 a1 a2 2 其次,比如我们要实现点击a1的时候 t1里面出文字。那么,给a1绑定一个事件。该事件效果是改变t1的文本。
我碰到和他一样的问题:http://bbs.csdn.net/topics/390357245
dylwildwolf 2013-04-03
  • 打赏
  • 举报
回复
1 首先,给textarea 和a 都编号 用id就行 比如 t1 t2和 a1 a2 2 其次,比如我们要实现点击a1的时候 t1里面出文字。那么,给a1绑定一个事件。该事件效果是改变t1的文本。
liu_dashi 2013-04-03
  • 打赏
  • 举报
回复
兄弟 用过xhEditor控件没? 貌似触发不了focus事件,而普通的<textarea>控件没问题

87,917

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧