Javascript 将单击的值添加到存储值查询
这是一个测验。用户有一个问题,可以选择三个答案。答案是按钮。每个按钮都有一个值。当用户单击按钮时,它会给出一个值,然后进入下一个问题。这个过程通过一系列的7个问题重复。在这个过程中,我希望它添加每个单击的值,并在最后累积总数 我不确定是否应该为此创建一个循环?我还想指出的是,这是在不刷新页面的情况下完成的,在测试的不同部分使用.show和.hide功能 谢谢你的帮助 以下是按钮:Javascript 将单击的值添加到存储值查询,javascript,jquery,Javascript,Jquery,这是一个测验。用户有一个问题,可以选择三个答案。答案是按钮。每个按钮都有一个值。当用户单击按钮时,它会给出一个值,然后进入下一个问题。这个过程通过一系列的7个问题重复。在这个过程中,我希望它添加每个单击的值,并在最后累积总数 我不确定是否应该为此创建一个循环?我还想指出的是,这是在不刷新页面的情况下完成的,在测试的不同部分使用.show和.hide功能 谢谢你的帮助 以下是按钮: 答案1 答复2 答案3您可以在末尾添加最后一个按钮,例如: <button id="finalbutton"
答案1
答复2
答案3
您可以在末尾添加最后一个按钮,例如:
<button id="finalbutton">Get Results</button>
你可以把所有问题放在同一页上。 当用户完成问题时,隐藏已完成的问题并显示下一个未回答的问题
每次有人回答问题时,将所选答案添加到您的提交表单中。当用户完成所有问题后,显示提交按钮,让其中一人提交答案。您可以使用下面的代码,并在此处的末尾显示总和 试试这个:
$(“按钮”)。单击(函数(){
var curScore=parseInt($(“span”).text(),10);
var newScore=parseInt($(this).val(),10);
$(“span”).text(curScore+newScore);
$(this.parent().hide();
$(this.parent().next().show();
});代码>
。问题{显示:无;}
问题1
答复1
答复2
答复3
问题2
答复1
答复2
答复3
问题3
答复1
答复2
答复3
最后的分数是0
您应该使用parseInt($(this).attr('value'),10)进行解析代码>以确保正确的基数。这种解决方案的缺陷在于,如果您允许用户更改答案(或者可以说是“返回”),那么它将继续添加到总分数中,超过最大分数。我个人会将每个答案存储为一个对象或数组,并在需要时求和这些值。这个解决方案非常有效!非常感谢。对于这一点,他们将无法返回并更改他们的答案,因此不必担心。谢谢你指出这一点。如果你想用干净的代码实现可伸缩性,就进入一些MVVM,比如knockout.js为什么你要建议OP已经提到的他们正在尝试做的事情?OP已经表示他们正在同一页面中显示它们,并使用显示/隐藏功能。问题在于将与按钮相关的值相加。这并不能回答问题,OP说他已经在这样做了!您应该使用parseInt($(this.val(),10)进行解析代码>以确保正确的基数。这也很有效。谢谢你在这方面的帮助!我想知道,我想更多的风格按钮区域,并希望他们在一个列表格式(- )。我已经更新了您的代码,但我希望它们在使用此
- 格式时并排显示,而不是堆叠显示。我试图更新显示:内联块;这里:但这不起作用。你有什么建议吗?
var accumValue = 0;
$("button").on('click', function() {
if(!$(this).attr('value')) {
return;
}
accumValue += parseInt($(this).attr('value'));
});
$('#finalbutton').on('click', function() {
alert(accumValue);
});
var sum= 0;
$("button").click(function() {
sum = sum + parseInt($(this).val());
//alert(sum);
});