【问题标题】:How to load Different Partial Views on the same div by radio button selection?如何通过单选按钮选择在同一个 div 上加载不同的局部视图?
【发布时间】:2014-06-03 07:18:46
【问题描述】:
enter code here
*MainView.cshtml*: @RadioButtonFor(m=>m.registeras,Individual) @RadioButtonFor(m=>m.registeras,BusinessEntity) <div id="loadpartial"> </div>

我有一个注册表单,用户可以在其中注册为个人企业实体。我保留了两个单选按钮。 如果用户选择单个单选按钮,则应加载该部分视图。如果用户选择业务实体单选按钮,那么第二个部分视图应该加载到同一个 div 上。 我是 asp.net mvc4 剃须刀的新手。有人可以请提供示例代码

【问题讨论】:

  • 您需要在单选按钮单击事件上使用 ajax,显示您尝试过的一些努力
  • 你熟悉jquery ajax吗?

标签: ajax asp.net-mvc-4 razor html-helper


【解决方案1】:

您必须使用 jQuery 才能进行 ajax 调用。

首先在页面底部引用 jQuery。

在您的控制器中,定义并实现一个返回局部视图的方法。

[HttpGet]
public ActionResult GetRegisterForm(int registeras)
{
    if(registeras == Individual)
    {
        return PartialView("IndividualPartialViewName");
    }
    else
    {
        return PartialView("BusinessPartialViewName");
    }
}

现在在您看来,您可以使用 ajax 调用上述操作。

<script type="text/javascript">
    $(function(){
        $("[name=registeras]").on('change', function(){
            var $radio = $(this);
            $.ajax({
                url:'@Url.Action("GetRegisterForm", "ControllerName")',
                data: { registeras = $radio.val() }
                type: 'GET',
                success: function(data){
                    $("#loadpartial").html(data);
                }
        });
    });
</script>

【讨论】:

  • 实际上 data:{regesteredas:$radio.val()}} 已经奏效了。无论如何,谢谢阿米拉:)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2015-03-07
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-03-21
  • 2015-04-20
  • 1970-01-01
相关资源
最近更新 更多