1

我正在尝试创建一封电子邮件(当用户单击链接时),其正文预填充了来自 asp:Literal 的文本。HTML 编写如下:

<tr>
    <td>
        <img src="../../images/Question.gif" alt="Q" />
        Q:
        <span id="question"><asp:Literal ID="literalQuestion" runat="server"></asp:Literal></span>
    </td>
</tr>
<tr>
    <td>
        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<img src="../../images/Answer.gif" alt="Q" />
        A:
        <span id="answer"><asp:Literal ID="literalAnswer" runat="server"></asp:Literal></span>
    </td>
</tr>
<tr>
    <td>
        &nbsp;
    </td>
</tr>
<tr>
    <td>
        Click <a href="#" onclick="javaScript:emailWrongInfo()">Here</a> to email.
    </td>
</tr>

我还有一个 JavaScript 函数,可以在用户单击电子邮件链接时打开电子邮件:

function emailWrongInfo() {
            window.location="mailto:Test@test.com?Subject=Email%20Notification&Body=Question:%0A" + document.getElementById("question").innerHTML+ "%0A%0AAnswer:%0A" + document.getElementById("answer").innerHTML;
    }

当我单击该链接时,新电子邮件会打开,但正文部分未填写问题和答案。似乎跨度的文本没有被拉出。

任何帮助将不胜感激。

4

2 回答 2

0

请尝试更改:

    document.getElementById("question").textContent 

    document.getElementById("question").innerHTML
于 2013-05-16T16:52:22.933 回答
0

使用HTMLElementObject.innerHTML而不是 elementNode.textContent。

HTMLElementObject.innerHTML 用于获取元素的内部 HTML,而 textContent 属性返回或设置所选元素的文本。

function emailWrongInfo() {
            window.location="mailto:Test@test.com?Subject=Email%20Notification&Body=Question:%0A" + document.getElementById("question").innerHTML+ "%0A%0AAnswer:%0A" + document.getElementById("answer").innerHTML;
    }

希望,它会解决你的问题。

于 2013-05-16T17:00:08.790 回答