我需要帮助。我正在做一个项目,并正在创建一个简单的调查。我拥有的代码应该可以工作。按下“是”按钮后,应在“ artscore”变量中加1。然后,当我按“提交”时,它应该检查变量是否大于1,并且是否显示“您是艺术家”,如果该变量不大于1,则应显示“您与众不同”。但是,每当我执行此操作并按提交时,即使我多次单击“是”,它也始终显示“您与众不同”。它应该可以,但是不能。我是一个完整的初学者,答案可能非常简单。我已经制作了多个原型,但我想弄清楚如何以这种方式进行调查。
谢谢您的帮助。
顺便说一句,这段代码的HTML部分被删除了。这个网站不允许我输入。这只是没有开始script标记的javascript部分。开头的HTML仅包含一些按钮,单击这些按钮可以运行两个功能。 yes按钮运行artFunction
函数,submit按钮运行submitFunction
函数。我也不知道为什么下面的代码分为两部分。感谢您提供有关为什么此代码无法正常工作的任何帮助。
var artscore = 0;
function artFunction(){
artscore = artscore + 1;
}
function submitFunction(){
if (artscore > 1){
alert("You are an artist");
} else {
alert("You are something different");
}
}
答案 0 :(得分:1)
您缺少>=
,使用的是>,这是因为>>首次单击艺术按钮时,它会显示“您与众不同” 消息,而不是 “你是一名艺术家”
var artscore = 0;
function artFunction(){
//console.log(artscore);
artscore = artscore + 1;
}
function submitFunction(){
//console.log(artscore);
if (artscore >= 1){
alert("You are an artist");
} else {
alert("You are something different");
}
}
<div id="wrapper">
<h1>What type of field are you interested in?</h1>
<p>Take this questionnaire to find out!</p>
<h2> ART1 <h2>
<input id="button" type="submit" name="button" onclick="artFunction();" value="Yes"/>
<button type="button">No</button>
<input id="button" type="submit" name="button" onclick="submitFunction();" value="Submit"/>
</div>
答案 1 :(得分:1)
我不确定这是否可以解决问题,但是问题可能出在Submit函数的if语句中。您目前正在检查artscore是否大于1,但是在art函数中,您要向artscore添加1。相反,您应该检查artscore是否大于或等于1。希望有帮助!
答案 2 :(得分:0)
我建议对您的代码更具体,即
function submitFunction(){
if (artscore >= 1){
alert("You are an artist");
} else if (artscore < 1){
alert("You are something different");
} else {
alert("An error has occurred!");
}
}
答案 3 :(得分:0)
更改
if (artscore > 1)
到
if (artscore >= 1)
,并检查您是否正在呼叫该功能。