【问题标题】:.load() is creating a completely new div container.load() 正在创建一个全新的 div 容器
【发布时间】:2014-09-02 16:25:28
【问题描述】:

我有一个定期用新数据刷新的局部视图。当我尝试使用.load() 加载新数据时,它会添加一个重复的 div 容器标签。我也用相同的post 尝试了.get().replacewith(),但我无法得到相同的结果

部分

<div id="marqueeTop">
    <span class="moveTop">
        @foreach(var item in Model){
            <label class="totalSales">
                @Html.DisplayFor(x => item.GroupName)
                @Html.DisplayFor(x => item.Sales ).....
            </label>   
        }
    </span>
</div>

JQuery

$('#marqueeTop').load('/Home/GetBookingsTicker', function () {
});

重复标签的图片

【问题讨论】:

  • 当然可以……你的部分中有一个 id 为 marqueetop 的 div。 load() 将在选择器之前加载所有响应.. 只需从部分中删除 id 为 marqueeTop 的 div 容器或在父级上调用 load() ..

标签: jquery razor


【解决方案1】:

要么在局部视图之外添加一个容器:

<div id="MarqueeContainer">
    @Html.Partial("_MarqueePartial");
</div>

$('#MarqueeContainer').load('/Home/GetBookingsTicker');

或者使用不同的ajax函数:

$.get('/Home/GetBookingsTicker', function(response) {
    $('#marqueeTop').replaceWith(response);
});

【讨论】:

    猜你喜欢
    • 2021-12-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-04-01
    • 2014-01-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多