В моем MVC-проекте у меня есть этот код для частичного просмотра:
Метод:
public ActionResult ShowArtCollection()
{
var model = new ViewModel();
model.ArtWorks = db.ArtWorks.ToList();
return PartialView("_artcollection", model);
}
AJAX:
$("#btnArt").click(function () {
$.ajax({
url: '/Home/ShowArtCollection',
dataType: 'html',
success: function (data) {
$('#artworks').html(data);
}
});
});
Я хотел бы, чтобы мой #btnArt
мог переключать частичный вид. Я имею в виду, что когда _artcollection отображается кликом по кнопке, следующий клик должен “отменить” представление. Любые советы о том, как достичь этого?
вы можете поместить флаг и проверить, отображается ли в следующий раз unrednder при нажатии:
var rendered = false;
$("#btnArt").click(function () {
if (!rendered) {
$.ajax({
url: '/Home/ShowArtCollection',
dataType: 'html',
success: function (data) {
$('#artworks').html(data);
rendered = true;
}
});
} else {
$('#artworks').html("");
rendered = false;
}
});
это сделает трюк для вас.