而不是试图从值传递onclick-有一个功能,从输入得到的值然后另一个函数返回该函数的结果并允许将内容放入p中。在代码中将函数(javascript)从结构(HTML)中分离出来总是更好。
请注意,你甚至不需要第二个函数 - 这可能全部在一个函数中完成,并且文本已经更新,但是因为你问过把值作为参数传递给函数 - 我想我会给你在我的答案中。
另外请注意,我改变了你的输入 - 你应该总是有一个标签的输入,并在JS - 你必须解析的价值之前比较/计算与他们的数字。所有输入(即使输入=“号”输入给字符串作为它们的输出 - 所以你需要把它解析为数字
function golfScore() {
var strokes = parseInt(document.getElementById('strokeset').value);
var par = parseInt(document.getElementById('parset').value);
document.getElementById("demo").innerHTML = setText(strokes,par)
}
function setText(strokes,par){
if (strokes == 1) {
return "Hole-in-one!";
} else if (strokes <= par - 2) {
return "Eagle";
} else if (strokes <= par -1) {
return "Birdie";
} else if (strokes == par) {
return "Par";
} else if (strokes == par + 1) {
return "Bogey";
} else if (strokes == par + 2) {
return "Double Bogey";
} else {
return "Go Home!";
}
}
\t
\t
Golf\t
Strokes:
Par:
\t klik
\t
\t