将var添加到新窗口Javascript中

Adding var to new window Javascript

本文关键字:窗口 Javascript var 添加 新窗口      更新时间:2023-09-26

做一些HTML和javascript的东西,我似乎在这一点上停滞不前。我所要做的就是执行一个简单的计算器,并将结果显示在一个新窗口上。使用javascript打开新窗口,但在获取结果并将其放入新的HTML窗口文本框时遇到问题。

var totalarea是我需要添加到新窗口的值,我想把它放在HTMLstring+='

''n'中;某处
<html>
<head>
<title>Cross-Window HTML</title>
<script type="text/javascript">
function newPage() {
HTMLstring='<html>'n';
HTMLstring+='<head>'n';
HTMLstring+='<title>New Document</title>'n';
HTMLstring+='</head>'n';
HTMLstring+='<body>'n';
HTMLstring+='<p><input type="text" name="area" id="area"/> Is how much carpet you need                                   in feet.</p>'n';
HTMLstring+='</body>'n';
HTMLstring+='</html>';
newwindow=window.open();
newdocument=newwindow.document;
newdocument.write(HTMLstring);
newdocument.close();
}
function ComputeSquareFeet() {
var percent = .01;
var num1 = +document.getElementById("length").value;
var num2 = +document.getElementById("width").value;
var num3 = +document.getElementById("allowance").value;
var area = num1 * num2;
var totalarea = (num3 * percent * area) + area; 
}
function newfeetwin() {
ComputeSquareFeet()
newPage()
}
</script>
</head>
<body>
<h1>Carpet Calculator</h1>
<form name="userInputs">
<label for="lengths">Enter the length of your room in feet</label><br/>
<input type="Text" name="length" id="length" size="7"><br/>
<label for="widths">Enter the width of your room in feet</label><br/>
<input name = "width" id="width" type="text"size="7"><br/>
<label for="allowance">Typically an allowance is made for room irregularities and         unavoidable waste.<br/>
Enter the percent overage as an integer in the interval [0, 20]</label><br/>
<input name = "allowance" id="allowance" type = "text" /><br/>

<input type="button" name="CalcSqFeet" id="area" value="Calculate Square Feet" onClick="newfeetwin()" /><br/>
<br />
</body>
</html>

更改等功能

function newPage(totalarea) {
HTMLstring='<html>'n';
HTMLstring+='<head>'n';
HTMLstring+='<title>New Document</title>'n';
HTMLstring+='</head>'n';
HTMLstring+='<body>'n';
HTMLstring+='<p><input type="text" name="area" id="area" value="'+totalarea+'"/> Is how much carpet you need                                   in feet.</p>'n';
HTMLstring+='</body>'n';
HTMLstring+='</html>';
newwindow=window.open();
newdocument=newwindow.document;
newdocument.write(HTMLstring);
newdocument.close();
}
function ComputeSquareFeet() {
var percent = .01;
var num1 = +document.getElementById("length").value;
var num2 = +document.getElementById("width").value;
var num3 = +document.getElementById("allowance").value;
var area = num1 * num2;
var totalarea = (num3 * percent * area) + area; 
return totalarea;
}
function newfeetwin() {
//ComputeSquareFeet()
newPage(ComputeSquareFeet())
}

您应该返回JavaScript函数的值,然后将值传递给答案框。。更改您的JavaScript代码如下。

<script type="text/javascript">
function newPage(dd) {
HTMLstring='<html>'n';
HTMLstring+='<head>'n';
HTMLstring+='<title>New Document</title>'n';
HTMLstring+='</head>'n';
HTMLstring+='<body>'n';
HTMLstring+='<p><input type="text" name="area" id="area" value="'+dd+'"/> Is how much carpet you need                                   in feet.</p>'n';
HTMLstring+='</body>'n';
HTMLstring+='</html>';
newwindow=window.open();
newdocument=newwindow.document;
newdocument.write(HTMLstring);
newdocument.close();
}
function ComputeSquareFeet() {
var percent = .01;
var num1 = +document.getElementById("length").value;
var num2 = +document.getElementById("width").value;
var num3 = +document.getElementById("allowance").value;
var area = num1 * num2;
var totalarea = (num3 * percent * area) + area; 
return totalarea;
}
function newfeetwin() {
    var dd = ComputeSquareFeet()
    newPage(dd);
}
</script> 

我想你得到了你想要的。。干杯