剥离HTML,保留mailto标记的换行符

时间:2011-12-23 00:22:44

标签: javascript mailto

我几乎从here的最多投票答案中得到答案,但我正在尝试将div内容放在mailto标签正文中。

function getInnerText(el) {
    var sel, range, innerText = "";
    if (typeof window.getSelection != "undefined" && typeof document.createRange != "undefined") {
        sel = window.getSelection();
        sel.selectAllChildren(el);
        innerText = "" + sel;
        sel.removeAllRanges();
    } else if (typeof document.selection != "undefined" && typeof document.body.createTextRange != "undefined") {
        range = document.body.createTextRange();
        range.moveToElementText(el);
        innerText = range.text;
    }
    return innerText;
}


function doMailTo() {
    var title = $('#title').val();
    var el = document.getElementById("container");
    //alert(getInnerText(el));  //--> works fine

    location.href = "mailto:?subject="+title+"&body="+(getInnerText(el));
}

<a href="javascript:doMailTo();">Email</a>

这在警报中效果很好但是电子邮件中的换行符丢失了。有没有办法可以用%0A%0a替换换行符?或者以另一种方式做同样的事情?

谢谢!

1 个答案:

答案 0 :(得分:0)

简短回答,但这%0D%0A%0D%0A对我有用。