我需要从单选按钮获取一个值,然后启用或禁用其他组件。
我在模态弹出窗口的局部视图中执行此操作。
我将JQuery代码放在局部视图中但不起作用。
如果我从父母那里得到一个值,那就可以了。
部分视图(仅限部分)
<fieldset>
<section class="col col-10">
<div class="inline-group">
<label class="label">Notifica attività di tipo Replacing con collegamento ad una precedente notifica mancante</label>
<label class="radio">
@if ((Model.VET_NOTREPMOD == "1") || (Model.VET_NOTREPMOD == "2"))
{
<input type="radio" name="radio-inline" id="VET_NOTREPMOD_0" value="1" checked>
}
else
{
<input type="radio" name="radio-inline" id="VET_NOTREPMOD_0" value="1">
}
<i></i>Usa ID Evento
</label>
<fieldset id="Mode3" >
<section class="col col-10">
<div class="inline-group">
<label class="label">Se non trovata</label>
<label class="radio">
@if (Model.VET_NOTREPMOD == "1")
{
<input type="radio" name="radio-inline1" id="VET_NOTREPMOD_1" value="1" checked>
}
else
{
<input type="radio" name="radio-inline1" id="VET_NOTREPMOD_1" value="1">
}
<i></i>Processala come nuova
</label>
<label class="radio">
@if (Model.VET_NOTREPMOD == "2")
{
<input type="radio" name="radio-inline1" id="VET_NOTREPMOD_2" value="2" checked>
}
else
{
<input type="radio" name="radio-inline1" id="VET_NOTREPMOD_2" value="2">
}
<i></i>Ignorala
</label>
</div>
</section>
</fieldset>
<label class="radio">
@if (Model.VET_NOTREPMOD == "3")
{
<input type="radio" name="radio-inline" id="VET_NOTREPMOD_3" value="3" checked>
}
else
{
<input type="radio" name="radio-inline" id="VET_NOTREPMOD_3" value="3">
}
<i></i>Ignorala
</label>
</div>
</section>
</fieldset>
部分视图中的JQuery
@section Scripts {
<script type="text/javascript">
$(document).ready(function () {
$("input[name='radio-inline']").click(function () {
if ($("#VET_NOTREPMOD_3").is(":checked")) {
var valor = $('#VET_NOTREPMOD_3').val();
console.log("Valore: " + valor);
} else {
console.log("ciao");
}
});
});
</script>
}
Parent中的代码,我得到一个值(我这样做是为了测试)
$(function () {
$("#dialog").dialog({
autoOpen: false,
modal: true,
width: 600,
title: $('#tableTitle').val(),
buttons: [
{
html: "Cancel",
"class": "btn btn-default",
click: function () {
$(this).dialog("close");
}
}, {
html: "<i class='fa fa-check'></i> OK",
"class": "btn btn-primary",
click: function () {
//$('#VET_NOTREPMOD_3').change(function () {
var valor = $('#VET_NOTREPMOD_3').val();
console.log("Valore: " + valor);
//var selValue = $('input[name=sample]:checked').attr('id');
//$('p').html('<br/>Selected Radio Button ID is : <b>' + selValue + '</b>');
// });
//---
//var code = $('#DesEng').val();
//console.log(code);
$(this).dialog("close");
}
}
]
});
});
由于
答案 0 :(得分:0)
问题:“您的部分视图不是加载的DOM的一部分,因此它不可用于jquery”
..除了部分视图应该包含HTML而且只有一点js的事实 (允许一点点)
在你的情况下
<script type="text/javascript">
$(document).ready(function () {
没有得到jquery ....一个快速的黑客就是在函数之前调用jquery ...并删除document.ready part
PS:这不是一个很好的解决方案....我只是在告诉黑客让代码正常工作......
<script type="text/javascript" src="~Scripts/Jquery.min.js">
$("input[name='radio-inline']").click(function () {
if ($("#VET_NOTREPMOD_3").is(":checked")) {
var valor = $('#VET_NOTREPMOD_3').val();
console.log("Valore: " + valor);
} else {
console.log("ciao");
}
});
</script>
应该做的伎俩