我正在使用此Filterable Jquery Portfolio
我的代码如下
查看
<div class="genre">
<ul id="filter">
<li class="current"><a href="#">All</a></li>
<li><a href="#">Show</a></li>
<li><a href="#">Movie</a></li>
</ul>
<ul id="album-list">
@foreach (var video in Model)
{
<li class="@video.VideoType">
<a href="@Url.Action("Details", new { id = video.Id })">
<img height="100px" width="100px" alt="@video.Title" src="@video.ImageURL" />
<span>@video.Title</span>
</a>
</li>
}
</ul>
</div>
Jquery的
$(document).ready(function() {
$('ul#filter a').click(function() {
$(this).css('outline','none');
$('ul#filter .current').removeClass('current');
$(this).parent().addClass('current');
var filterVal = $(this).text().toLowerCase().replace(' ','-');
if(filterVal == 'all') {
$('ul#album-list li.hidden').fadeIn('slow').removeClass('hidden');
} else {
$('ul#album-list li').each(function () {
if(!$(this).hasClass(filterVal)) {
$(this).fadeOut('normal').addClass('hidden');
} else {
$(this).fadeIn('slow').removeClass('hidden');
}
});
}
return false;
});
});
渲染的html
的摘录<div class="genre">
<ul id="filter">
<li class="current"><a href="#">All</a></li>
<li><a href="#">Show</a></li>
<li><a href="#">Movie</a></li>
</ul>
<ul id="album-list">
<li class="Show">
<a href="/Store/Details/4">
<img height="100px" width="100px" alt="Age of Conan" src="https://s3-eu-west-1.amazonaws.com/vapour/images/zero.jpg" />
<span>Age of Conan</span>
</a>
</li>
不知何故,当我选择电影或节目时,相应的项目不会出现。一切都有效。我在某个地方犯了一个愚蠢的错误吗?感谢
*更新,好的。发现如果li类是小型大写,则可以显示这些项目。即使第一个字符大写,我如何更改ws才能工作?感谢
<li class="show">
答案 0 :(得分:0)
好的。在列表类中添加了@ video.VideoType.ToString()。ToLower()。谢谢大家