首页 > 解决方案 > MVC 5 Razor View - 在 foreach 循环中加载部分视图,需要将显示/隐藏切换设置为每个部分

问题描述

添加部分: 简单版本:我在 PersonView 它有一个下拉选项,显示您有多少电话号码:___ 下拉选项为 1=5。

用户选择 3。

行动项目 1:我需要从 foreach 循环中添加 3 个部分视图到此视图中。

对第 1 项的关注:正在添加的部分视图有一个隐藏的 div,它连接到一个显示/隐藏功能。

如何在选择和命名项目后添加视图,以便隐藏/显示知道哪个是哪个。

细节:

我需要在 foreach 循环中加载部分视图,并且不确定如何动态设置部分的内容,以便可以根据需要将显示/隐藏 jquery 设置为每个项目。

问题:部分视图有一个 div,其 id 具有一个 jquery 函数设置为基于单选按钮选择隐藏/显示。

1 部分到 1 jquery 的示例工作示例是这样的:(这一切都很好)

<div>
<div class="row">
    <div class="form-group col-xs-8 col-md-8">
        @Html.LabelFor(l => l.HasPhone)
        <label> @Html.RadioButtonFor(r => r.HasPhone, true, new { @class = "ui-controlgroup-item", id = "yeshasphone" }) Yes</label>
        <label> @Html.RadioButtonFor(r => r.HasPhone, false, new { @class = "ui-controlgroup-item", id = "nohasphone" }) No</label>
    </div>
</div>
<div class="collapse panel-default" id="hasphonedata">
</div>

这有一个 JQuery 隐藏/显示切换设置,如下所示:

$(document).ready(function () {
$('input:radio[name="HasPhone"]').click(function () {
    var value = $("#yeshasphone").is(':checked');
    if (value) {
        $("#hasphonedata").show();
    } else {
        $("#hasphonedata").hide();
    }
});

如何从循环中加载部分视图,以将该项目设置为特定名称,我可以将 jquery 切换器连接到:

我的循环从 foreach 加载:

@{
    foreach (PersonViewModel person in Model)
    {
        @Html.Partial("/Edit/_IndividualEdit", child)       
        <div class="hidden-display" id="@person.HasPhone">
            @Html.Partial("/Edit/_AliasPersonEdit", child)
        </div>
    }
}

问题是:如何加载 3 个将隐藏 div 设置为 jquery 显示隐藏功能的部分视图,并命名这 3 个部分,以便它们都是不同的名称,可以与新的 jquery 函数匹配以用于这 3 个函数?

标签: jqueryasp.net-mvcviewasp.net-mvc-partialview

解决方案


推荐阅读