javascript - 有没有我可以为单选按钮赋值的javascript函数?
问题描述
所以我在单选按钮上获取一些值有一个小问题。我在 html 制作单选按钮的地方做了一个 foreach 循环。这些是是/否按钮,每个是/否集都需要一个值。
就像问题 1 将具有值 1,2 将具有 2,3 将具有 4,4 将具有 8 等等。
最后需要加总分,但是如果选择了NO(例如问题4,值为8为NO,则值为0)
我试过做一个如下所示的 Javascript 函数,使它有点工作。但是,如果所有答案均为“否”并且您提出问题 4 是(其值应为 8),那么它只是说我的值为 2。我知道这行不通,但我想知道我是否可以通过某种方式改变它我可以让它按照我想要的方式工作
@foreach (var item in Model)
{
<div class="box">
<p>@Html.DisplayFor(modelItem => item.Question)</p>
<label>
<input id="yes" type="radio" name="@item.Id" checked="">
<span class=" yes randobtn">Ja</span>
</label>
<label>
<input id="no" type="radio" name="@item.Id">
<span class="no randobtn">Nee</span>
</label>
</div>
}
<button class="btn btn-primary" onclick="GetCount()">check</button>
@section Scripts{
<script type="text/javascript">
$(document).on('click',
'#btn',
function() {
console.log('test');
location.href = "/Symptom/GetProblems?TotalPoints=" +
count;
});
var count = 1;
$(document).on('click',
'.randobtn',
function() {
GetCount();
});
function GetCount() {
var checkedRadioBtns = $('input[type="radio"]:checked');
count = 1;
for (var i = 0; i < checkedRadioBtns.length; i++) {
if (checkedRadioBtns[i].id === 'no') {
console.log('in de if');
continue;
} else {
count = count * 2;
}
}
alert(count);
}
</script>
}
这就是我想要的:http ://prntscr.com/o6zrqd ,但正如您在警报中看到的那样,它只是在选择不选择时说1
解决方案
将 true 和 false 的值放入数组中,然后 value="@item.true_value"
推荐阅读
- javascript - 如何访问嵌套数组和对象数据结构中的属性?
- javascript - 如何在 node express 中获得类似 username.mywebsite.com 或仪表板的路由
- powerbi - Power BI 中的重新格式化列
- terraform - 使用 AWS ECS 进行蓝绿色部署
- amazon-s3 - 如何获取 aws-iam-token 以使用 IRSA 访问 S3?
- landscape - 如果在表中同时使用 Landscape 和 Longtable 冲突
- python - 默认情况下,一个文件夹和 main.py 在那里,它们有什么作用,它们是否重要(如果不删除它们)?
- html - 在 Angular Table 中,当我们在第一行的最后一个单元格中输入值然后按 Enter 键时,如何设置焦点以移动下一行
- python - 如何将变量保存到 Python 中 For 循环内的数据框?
- mysql - Codeigniter更新表替换mysql中的部分字符串