我创建了一个文档,点击CLR
按钮应该从clear()
文件调用函数calc.js
,并设置标记为表格的单元格的innerHTML
" DISP"到80085
。它没有像我想象的那样工作。为什么不起作用?以下是我的代码。
function clear() {
var disp = document.getElementById('disp');
disp.innerHTML = "80085";
}
//function number('s') {
//
//}
//the number function has yet to be implemented

table {
border-collapse: collapse;
}
#display {
background-color: lightgray;
}
button {
width: 100%;
background-color: white;
border: 1px solid #008CBA;
border-radius: 2px;
transition-duration: 0.1s;
}
button:hover {
background-color: #008CBA;
color: white;
}
button:active {
background-color: #007ea7;
border: 1px solid #007ea7;
}

<!DOCTYPE html>
<html>
<head>
<script src="calc.js" type="text/javascript"></script>
<link href="calc.css" rel="stylesheet" type="text/css" />
<meta charset="utf-8">
<title>Simple Calculator</title>
</head>
<body>
<table>
<tr>
<td colspan="3" id="disp">0</td>
<td><button onclick="clear();">CLR</button></td>
</tr>
<tr>
<td><button onclick="number("7");">7</button></td>
<td><button onclick="number("8");">8</button></td>
<td><button onclick="number("9");">9</button></td>
<td><button onclick="">/</button></td>
</tr>
<tr>
<td><button onclick="number("4");">4</button></td>
<td><button onclick="number("5");">5</button></td>
<td><button onclick="number("6");">6</button></td>
<td><button onclick="">*</button></td>
</tr>
<tr>
<td><button onclick="number("1");">1</button></td>
<td><button onclick="number("2");">2</button></td>
<td><button onclick="number("3");">3</button></td>
<td><button onclick="">-</button></td>
</tr>
<tr>
<td><button onclick="number("7");">0</button></td>
<td><button onclick="">.</button></td>
<td><button onclick="">=</button></td>
<td><button onclick="">+</button></td>
</tr>
</table>
</body>
</html>
&#13;
所有和nay hep将不胜感激!
答案 0 :(得分:1)
<强> Working fiddle 强>
首先,您必须为您的函数使用其他名称,而不是clear
,请查看此帖 Is “clear” a reserved word in Javascript? 。
其次,当您附加onclick()
事件时,您应该在所有按钮中准确地修复HTML代码中的引号,因为您会注意到 HERE ,例如:
<td><button onclick="number("7");">7</button></td>
_____________________^______^_^__^
尝试使用单引号:
<td><button onclick="number('7');">7</button></td>
____________________^____________^
希望这有帮助。
答案 1 :(得分:0)
将onclick="number("1");"
替换为onclick="number('1');"
,其中1为单引号。同样在number('s')
函数的声明中,你将变量放在单引号中,这意味着,每当调用数字函数时,总是考虑值s,所以在这里删除单引号。