部分视图在点击时不会出现

本文关键字:视图 | 更新日期: 2023-09-27 18:34:07

当我

单击按钮时,我无法让我的部分视图出现在"div"中。我可以看到它在调试时获取数据,但不显示它。现在有人可能遇到问题吗?

视图

@model IEnumerable<ActiveDirectorySearch.Models.UserModel>
<div id="searchList">
    <table>
        @foreach (var user in @Model)
        {
            <tr>
                <td>
                    <ul class="user" data-user-id="@user.DistinguishedName">
                        <li><b>@user.DisplayName</b></li>
                        <li><i>Cdsid:</i> @user.CdsId</li>
                        <li><i>Name:</i> @user.GivenName  @user.SurName</li>
                        <li><i>Title:</i> @user.Title</li>
                        <li><i>Department:</i> @user.Department</li>
                        <li><i>MemberOf:</i> <a href="#/?searchTerm=@user.DistinguishedName" class="LoadGroupsViewButton">Groups</a></li>
                        <li class="userInfo"><a href="More Info">More Info</a></li>
                        <li>
                        </li>
                    </ul>
                </td>
            </tr>
        }
    </table>
    <div class="col-md-6 col-md-offset-3 display-groups">
    </div>
</div>

控制器

    public ActionResult GetUserInfo(string searchTerm)
    {
        GroupRepository groupRepository = new GroupRepository();
        var groups = groupRepository.FindGroups(searchTerm);
        return PartialView(groups);
    }

脚本

<script>
    $(function () {
        $('.LoadGroupsViewButton').click(function () {
            var self = this;
            var $user = $(self).closest('.user');
            var userDistinguisedName = $user.data("user-id");
            $.ajax({
                method: "GET",
                url: 'Home/GetUserInfo',
                data: { searchTerm: userDistinguisedName }
            }).done(function (data) {
                $(self).find('.display-groups').html(data);
            });
        });
    });
</script>

部分视图在点击时不会出现

将代码从

$(self).find('.display-groups').html(data);

$("#searchList").find('.display-groups').html(data);

因为这里的"self"是因为这段代码而触发事件的 DOM 元素

var self = this;

所以它不会发现div 具有类"显示组"