如何将字符附加到父窗口的组件

时间:2013-04-25 09:44:48

标签: php javascript append special-characters window.opener

我有一个链接,当它点击时,它会打开另一个浏览器窗口(specialChars.php)

function popup_specialChars()
    {

        var ht;
        if(window.navigator.appVersion.indexOf("MSIE 5.01") == -1)
            ht = 300;
        else
            ht = 720;
        specialCharsWindow = window.open
        (
            "/TradeScienceJournalSystem/specialChars.php", "special_characters",
            "resizable=yes,scrollbars=yes,height=" + ht + ",width=650,dependent=yes,alwaysRaised=yes"
        );
        specialCharsWindow.focus();
    }

<a href="javascript:popup_specialChars();" class="special">Insert Special Character</a>
<textarea name="docArticleTitle" cols="60" rows="14"></textarea>

specialChars.php

function insert_text(str)
        {
                    alert(str);

            opener.append(str); // Not working
            this.window.focus();
        }

<table border="1" id="table1" width="97%">
                <tr>
                    <td align="center" class="specialcharlink"><a href="javascript:insert_text('&#x00E1;')"><span class="specialchar">&#x00E1;</span></a></td>
                </tr>
</table>

现在当一个特殊字符的链接点击时会发生什么,insert_text()将被调用。并且alert显示特殊字符。但是我想将该字符附加到开启窗口的textarea中。但是它不起作用。

如何表示开启窗口的textarea?

1 个答案:

答案 0 :(得分:1)

给textarea一个id

<textarea name="docArticleTitle" id="id1" cols="60" rows="14"></textarea>

并改变了

function insert_text(str)
        {
                    window.opener.document.getElementById('id1').value += str;
                    this.window.focus();
        }

它开始将字符附加到textarea。