我有一个我正在访问的值,并通过onclick
传递给JavaScript函数。
<a href="#" onclick="openTextWindow('<%=myVar.varDefinition.getText()%>');">Text</a>
我从getText
方法收到的示例值如下所示。
<h1>My Header</h1><br />My text
然后将此值传递给我的openTextWindow
方法。
function openTextWindow(inText) {
myWindow = window.open('','','width=500, height=300');
myWindow.document.write(inText);
myWindow.focus();
}
由于某种原因,inText
中存储的值与我在上面显示的HTML标记的字符串不匹配。它最终看起来像这样。
"<lt/>h1<gt/>My Header<lt/>/h1<gt/><lt/>br /<gt/>My text
当inText
写入myWindow
时,我希望新的窗口在样式标题中使用文字My Header
进行呈现,并在下面的一行上使用My text
进行呈现。我试过没有运气来替换和逃避角色。关于如何解决这个问题的想法或更好的方法来完成我想要做的事情?谢谢!
答案 0 :(得分:2)
您可以将HTML存储在隐藏的DIV或textarea中,然后从您的函数中获取它,而不是尝试将其传递给内联。
<a href="#" onclick="openTextWindow('DIV1');">Text</a>
<div id="DIV1" style="display:none"><%=myVar.varDefinition.getText()%></div>
JS:
function openTextWindow(divName) {
var inText = document.getElemenyById(divName).innerHTML;
myWindow = window.open('','','width=500, height=300');
myWindow.document.write(inText);
myWindow.focus();
}