如何从外部 js 文件引用 id

How to reference an id from external js file

本文关键字:引用 id 文件 js 从外部      更新时间:2023-09-26

这是一个后续问题。 我终于能够让提示循环在 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;
}   

在这一行中:

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

您已经使用了变量 loopct ,但您的循环计数器实际上称为 loopCt 。案例在Javascript中很重要。

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

您的变量称为loopCt而不是loopct

在这一行中:

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

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