我创建了一个新页面来简化工作流程,但为了促进用户友好性和低进入门槛,我试图将我正在做的事情限制在单个 html 文件中。但是,我要采用的方法要求我使用页面本身的一部分创建一个 JavaScript 弹出窗口,我已经使用
<div id="head"></div>
和
<div id="body"></div>
此部分包含一个表单,一切正常,除了弹出窗口通过将占位符字符串放置在标签之间来将其转换为值。
这是我的弹出脚本:
function openwindow(url){
var newHead = $("#head").html();
var newBody = $("#body").html();
NewWindow=window.open( url,'PopUp','resizable=no');
NewWindow.document.write(newHead+newBody);
NewWindow.focus(); };
这是新体(#body)变量的一部分
<input id="cause" type="text" class="input" placeholder="Description">
<br><br>
<textarea id="desc" type="text" placeholder="Supplemental"></textarea>
..但这是我在弹出窗口中得到的:
<input class="input" id="cause" type="text" placeholder="Description">
<br><br>
<textarea id="desc" placeholder="Supplemental" type="text">Supplemental</textarea>
我错过了什么吗?
这是一个IE浏览器问题,请检查:
https://connect.microsoft.com/IE/feedback/details/811408
我检查了Chrome,Firefox和Opera,工作正常。只有IE。
我想出了一个奇怪的解决方法,但我希望有人能想出更好的方法。我添加了一行执行onLoad的jQuery代码,该代码将整行替换为我想要的内容。不是最好的,但我想它是可用的。
$('#replace').html('<textarea id="desc" type="text" placeholder="Supplemental"></textarea>');