簡體   English   中英

使用javascript無法在c#asp.net mvc 4中動態加載內容

[英]Dynamically loading content in c# asp.net mvc 4 using javascript not working properly

我正在一個擁有所有者可以添加,編輯和刪除展覽的網站上工作。 單擊“閱讀更多”按鈕,每年都會舉辦展覽。 我的頁面遇到了一個奇怪的問題,因為一旦單擊“閱讀更多”,我就將內容加載到了一個新的div中,並且我需要該div的唯一標識符。 我正在使用id="@Year here"標識此div,但是遇到了這個問題:

在此處輸入圖片說明

如您所見,它沒有正確加載。 我有以下代碼可加載到每個組的所有展覽中:

@if(Model.Exhibitions.Count() > 0)
{
<h3 style="text-align: left; margin-left: 10px; padding-top: 10px;">@Model.Year</h3>
<table class="extable">
    <tr>
        <th style="width: 15%">@Translations.EXHIBITIONSTARTDATE</th>
        <th style="width: 15%">@Translations.EXHIBITIONENDDATE</th>
        <th style="width: 15%">@Translations.EXHIBITIONEVENT</th>
        <th style="width: 40%">@Translations.EXHIBITIONDESCRIPTION</th>
        <th style="width: 15%">@Translations.GALLERY</th>
    </tr>

@foreach (Exhibition item in Model.Exhibitions)
{
    @Html.Partial("_Exhibition", item)
}

</table>

}

<div class="more-exhi" id="@Model.Next"></div>

<script type="text/javascript">
(function () {
    $('.more-exhi#@Model.Year').attr('class', '');
    $('.show-more').attr('data-year', '@Model.Next');
}) ();
</script>

@ Model.Year是發送到控制器的年份(例如,2014)。 @ Model.Next是下一個存在的年份,展覽按降序排列(例如2010)。 但是上面的代碼無法正常工作,我不確定為什么。 一旦有人點擊“閱讀更多”按鈕,這就是我的JavaScript:

<script type="text/javascript">

(function () {

    var div = $('#exhibitions');

    div.find('.show-more').click(function () {
        div.find('.more-exhi').hide().load('@Url.Action("Exhibitions", "Exhibition")', { year: $(this).attr('data-year') } ).fadeIn('1500');
        div.find('.show-less').show();
    });

})();
</script>

有人可以幫我解決這個問題嗎? 我認為我在這里監督了一個問題,因為這應該不太困難。

嘗試將以下代碼行更改為:

 $('.more-exhi#' + @Model.Year).attr('class', '');

:)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM