我有一个带有true和false值的单选按钮列表。我想获得更改点击事件的价值,以便我可以用它来显示条件标签。如果是真的;如果它的假标签不同,我会展示一个标签。它是一个项目列表,所以我正在循环它..
这是我到目前为止所做的:
型号:
public List<bool>answerValues { get; set; }
查看:
<td>
@Html.RadioButtonFor(model => model.answerValues[i], true, new { id =
"TrueValueID", @onclick = "buttonValue()"}) True
@Html.RadioButtonFor(model=> model.answerValues[i], false, new { id =
"FalseValueID", @onclick ="buttonValue()" }) False
</td>
的JavaScript
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script>
<script>
function buttonValue(e) {
alert(e.value);
}
</script>
在Controller - Action方法(Get)中,我想获取true / false值,以便根据值显示/隐藏。
我不熟悉Razor / MVC。任何帮助将受到高度赞赏!
答案 0 :(得分:3)
您错过了this
,应该使用buttonValue(this)
:
<td>
@Html.RadioButtonFor(model => model.answerValues[i], true, new { id =
"TrueValueID", @onclick = "buttonValue(this)"}) True
@Html.RadioButtonFor(model=> model.answerValues[i], false, new { id =
"FalseValueID", @onclick ="buttonValue(this)" }) False
</td>
在行动中:
function buttonValue(e) {
alert(e.value);
if (e.value === 'true') {
alert('it is true');
} else {
alert('it is false');
}
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="radio" name="test" value="true" onclick="buttonValue(this)" />
<input type="radio" name="test" value="false" onclick="buttonValue(this)" />
我想获得真/假值,以便我可以根据值显示/隐藏
单选按钮返回on
如果选中,则显示标签,如果值返回on
,则显示另一个标签。您也可以为value
或布尔值等单选按钮设置<input type="radio" value="true"...
。
答案 1 :(得分:0)
您应该为所有单选按钮使用name属性。
然后在JQuery中
$('input:radio[name=RADIO_NAME]').change(function () {
var value = $('input:radio[name=RADIO_NAME]:checked').val();
switch(value).....
});
答案 2 :(得分:0)
我希望这会对你有所帮助。
剃刀代码
这里我们可以在单选按钮上设置公共类来绑定更改事件 在js。
<td>
@Html.RadioButtonFor(model => model.answerValues[i], true, new { id =
"TrueValueID", @class="rdbtnanswervalue"}) True
@Html.RadioButtonFor(model=> model.answerValues[i], false, new { id =
"FalseValueID", @class="rdbtnanswervalue" }) False
</td>
Js代码
<script>
$(function () {
$(".rdbtnanswervalue").on("change", function () {
// for current value
alert($(this).val());
// for all radio button with same class uncomment below code.
//$(".rdbtnanswervalue").each(index, ele)
//{
// // get value and perfom action acordingly.
// alert($(ele).val())
//}
})
})