本帖最后由 js_acc1 于 2012-05-16 23:34:49 编辑

解决方案 »

  1.   

    window.opener.document.getElementById("myTextArea").innerHTML = '这里写你的字符串'
      

  2.   

    #myTextArea是个多行文本输入框啊,怎么能嵌入别的对象。。你要做的是构造一个含有表格html代码的字符串,然后把这个字符串赋给#myTextArea对象的value属性:var html = '<table><tbody><tr><td><a href="http://www.google.com/">GOOGLE</a></td></tr></tbody></table>';
    window.opener.document.getElementById("myTextArea").value = html;
      

  3.   

    如果那个textarea在同一个页面上就可以appendchild,这是为什么?
      

  4.   


    "可以"不代表正确,貌似只有IE、Opera浏览器才允许这样操作(实际上只保留了对象中的文本节点,元素节点会被忽略)。textarea元素只是个文本输入框控件,主要用于表单中,允许用户自由输入文本并提交到服务器端,它的值只能是普通文本,不能是别的DOM元素,也就是说它不能作为其它元素的容器。下面这个例子可以证实我的说法。(在各种浏览器中分别尝试一下)
    <textarea id="demo"></textarea>
    <script type="text/javascript">
    var obj = document.createElement('a');
    obj.href = 'http://www.google.com/';
    obj.innerHTML = 'GOOGLE';var demo = document.getElementById('demo');
    demo.appendChild(obj);
    alert(demo.value);
    </script>
      

  5.   

    改成 window.opener.document.createElement("input");就行了