0

这是一个后续问题。我终于能够让提示循环在 js 函数中工作。但我想让它显示在主 html 上输入的答案(变量)。我为列表创建了一个容器,然后创建了<p>id 以便我可以使用

document.getElementById('emp'+loopct).innerHTML=inName;  

在浏览器中显示项目。但似乎“文档”没有引用 html 文档(我注意到浏览器在后台变暗)。我将包含 html,然后包含外部脚本。

提前致谢。

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<link rel="stylesheet" type="text/css" href="css/payroll.css" />

<title>Payroll System</title>


<script type="text/javascript" >
var emps = new Array();
</script>   
</head>
<body>
<h1>Jackson Payroll System</h1>

<button type="button" onclick="inputEmp()">Click here to enter employees</button>

<div class="empContainer">
<p id=emp0> </p>
<p id=emp1> </p>
<p id=emp2> </p>
<p id=emp3> </p>
<p id=emp4> </p>
<p id=emp5> </p>
<p id=emp6> </p>
<p id=emp7> </p>
<p id=emp8> </p>
<p id=emp9> </p>
<p id=emp10> </p>
<p id=emp11> </p>
<p id=emp12> </p>
<p id=emp13> </p>
<p id=emp14> </p>
<p id=emp15> </p>
<p id=emp16> </p>
<p id=emp17> </p>
<p id=emp18> </p>
<p id=emp19> </p>
<p id=emp20> </p>
</div>
<script type="text/javascript" src="scripts/payroll.js"></script> 

</body>
</html>


function inputEmp() {
var inName = "";
var loopCt = 0
var tArray = new Array();

while (inName != "-1") 
{
    inName = prompt("Please enter your name (enter -1 to finish)","Employee Name");
if (inName == "-1")  { break; }
if (inName==null || inName=="")
    {
    alert("Blank names are not allowed.  To exit enter '-1'.");
    } 
else
    tArray[loopCt++] = inName;
    document.getElementById('emp'+loopct).innerHTML=inName;
{

}
}
return tArray;
}   
4

3 回答 3

2

在这一行:

document.getElementById('emp'+loopct).innerHTML=inName;

您已经使用了变量loopct,但实际上调用了循环计数器loopCt。大小写在 Javascript 中很重要。

于 2013-09-17T01:28:33.297 回答
0

您的脚本不在<script>标签内。

你的变量被称为loopCtloopct

于 2013-09-17T01:35:15.187 回答
0

在这一行:

document.getElementById('emp'+loopct).innerHTML=inName;

loopct需要,loopCt因为 JavaScript 变量是区分大小写的。

于 2013-09-17T01:37:41.647 回答