![](/img/trans.png)
[英]How to change the value of submit button after click using JavaScript or jQuery?
[英]How can I change the value in a nested array of objects, after a button click using JQuery and javascript?
我正在尝试使用Node.js,Javascript,JQuery,Jade和json文件制作投票应用程序进行练习。
简而言之,我试图计算每个选项的票数,最终将其呈现为图表。 具体来说,每次有人选择与该选项相关的单选按钮并点击提交时,我都试图在json中的对象值{"value": 0}
上添加+ 1。 我可以在我的JQuery中进入例如{"option": "Puppies","value": 0}
,并且我一直在尝试寻找一种方法来更改$("#btnVote").click(function(){})
object中的对象值$("#btnVote").click(function(){})
。 我不确定这是否可能或最佳方法。
这是JSON数据库的示例。
[{
"name": "Puppies or Kitties",
"id": "f2754172-1c58-41ed-ae84-74e046888adb",
"choices" : [{"option": "Puppies","value": 0}, {"option": "Kittens","value": 0}],
"admin": true}]
这是我用来动态渲染投票选项的Jade。
form(method="post")
fieldset.form-group
h1 #{poll.name}
form
table
each choice in poll.choices
tr
td=choice.option
input(type='radio',value=choice.value id=choice.option name="Answer" class="clsAnswer", style='margin:10px')
br
input(type="button", value="Submit Vote", id="btnVote")
如果它有帮助的视觉效果这是我到目前为止使用的JQuery。
//Radio button vote function
$("#btnVote").click(function () {
var selected = $(".clsAnswer:checked");
if (!selected.val()) {
alert("No Choice Was Made!");
}
else {
var optionName = $('input[type=radio][name=Answer]:checked').attr('id');
var selectedValue = selected.val();
selectedValue = parseInt(selectedValue);
alert("Value: " + selectedValue + " " + optionName);
};
});
谢谢大家!
在这种情况下,您可以通过两种方式更改对象值,或者通过在mongodb等数据库中的JSON或通过cookie作为临时更改。
当前的JQuery设置为接收静态html,而不是从JSON文件接收。
由于JSON文件在文件夹层次结构和静态(以及html)中被用作实践,因此当前的设置将不会呈现更新JSON中的对象值,甚至不会像在cookie中看到的那样作为临时更改。 另一种选择是使用node.js并创建一个新的JSON文件,但这不是此应用程序所针对的。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.