[英]Javascript / ASP.NET MVC 4 - Using C# Strings in Javascript
[英]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.