我试图通过依赖单选按钮选择在一个div中加载不同的局部视图。当用户单击“个人”按钮时,应显示部分视图,如果单击“业务”,则应显示“业务部分”视图
我的观看页面代码是
<script type="text/javascript">
$(function () {
$("[name=RegesterHere]").on('change', function () {
var $radio = $(this);
$.ajax({
url: '@Url.Action("GetRegisterForm", "Home")',
data: RegesterHere = $radio.val(),
type: 'GET',
success: function (data) {
$("#loadpartial").html(data);
}
});
});
});
</script>
<h2>GetRegisterForm</h2>
<table>
<tr>
<td colspan="1">@Html.LabelFor(m => m.RegesterHere)</td>
<td colspan="2">@Html.RadioButtonFor(m => m.RegesterHere, "Individual") Individual
@Html.RadioButtonFor(m => m.RegesterHere, "Business") Business</td>
</tr>
</table>
<div id="loadpartial">
</div>
我的控制器代码是
[HttpGet]
public PartialViewResult GetRegisterForm(string RegesterHere)
{
if (RegesterHere == "Individual")
{
return PartialView("IndividualPartialViewName");
}
else
{
return PartialView("BusinessPartialViewName");
}
}
有人可以帮助我找到错误。当我运行此代码时,它直接显示BusinessPartialName。我无法在输出中看到父视图单选按钮。如果没有选择单选按钮,它会直接在我的页面上加载第二个局部视图。
答案 0 :(得分:2)
让我们试试下面的AJAX Call。
var radiobuttonval = $radio.val();
var isselect = $("input:radio[name=RegesterHere]:checked").val();
if(isselect !="" || isselect !=undefined){
$.get("@Url.Action("GetRegisterForm", "Home")", {RegesterHere : radiobuttonval }, function (data) {
$("#loadpartial").html("");
$("#loadpartial").html(data);
});
}