webbrowser填充textarea的问题

我在用webbrowser控件做一个自动填充的程序,自动填充很简单 页面都是text元素,几个单选等等。获取到设置value就行了,但是在最后我遇到一个很棘手的问题,就是有一个textarea的文本编辑区。这个编辑区跟QQ空间,还有其他空间写日志用的编辑区差不多,只是比他们少一些编辑格式的功能罢了。开始我认为只是一个textarea而已,以前也做过,很简单设置它的innertext属性就搞定了,可是事实并没有我想的那么好,我设置了他的innertext没有任何效果。难道没有获取到这个textarea,于是我加了一个是否为空的判断,结果还是不行。后来我尝试了各种方法设置它的value、text 、找到他属于的div 设置innerhtml属性,以及给webbrowser重置html源码都不行,后来怀疑是要执行某个js函数,就瞪着那个页面的源代码找js函数,找好大功夫找到两个看着跟textarea有关的js函数,于是在程序里加上执行这个js函数并传递参数,结果还是很失望,textarea还是空的。然后又想难道是还要触发一下textarea的什么事件,没办法求助google了,详细gg了一下textarea,看了所有他的行为,方法,事件,属性,也试了好多,结果还是失望,为什么就填充不上呢。无奈又去看页面,我偶然在编辑区点了右键查看源代码,结果他出来并不是整个页面的源代码,它只是一个空的页面,里面什么都没有,下面给出那个页面的代码: 我想里面用到了框架?然后我去整个页面的源代码里搜索 iframe frameset 都没有发现有什么框架,哎,不管了 就按他在某一个框架里写程序试试吧。于是我在程序加了这一句代码: this.webBrowser2.Document.Window.Frames[0].Document.getelementbyid(“tinymce”).innertext="我的内容"; this.webBrowser2.Document.Window.Frames[0].Document.Body.InnerText = "ssssssss"; 然后我调试一次试试吧。哈,真是意想不到,结果出来了。这个问题这么纠结。整整搞了我一天的时间。终于出来了,心情很舒畅。哈哈。顺便再说一下 我上句代码 getelementById里的id并不是textarea的id 而是那个空页面body的id 大家看一下就知道了。附textarea的图:
posted @ 2011-12-30 11:40  天涯海客  阅读(1303)  评论(6编辑  收藏  举报