Я хотел бы установить переменную ViewBag (флаг), чтобы определить, какое частичное представление будет отображаться в моем общем представлении макета. Частичные - это набор значков. Когда нажимается значок «больше», я хочу поменять местами разные части с помощью другого набора значков меню. "больше" код значок нажмите устанавливается в макете JavaScript:MVC - Использование переменной Viewbag для определения Partial View не работает
$(function() {
$('#moreIcon').click(function() {
$.ajax({
url: 'Home/LoadMoreIcons',
dataType: "html",
success: function (data) {
}
});
});
});
Действие контроллера:
public EmptyResult LoadMoreIcons()
{
ViewBag.arrowClick = true;
return null;
}
Вид _layout (бритва) код:
<div id="headIcons">
@if ((bool?)ViewBag.arrowClick == false)
{
@Html.Partial("mainIconsPartial")
}
else
{
@Html.Partial("moreIconsPartial")
}
</div>
Что происходит то, что логика «else» никогда не происходит, даже если я могу сломаться в точке, где переменная Viewbag устанавливается в действии контроллера при щелчке по значку «больше».
Что делает '(bool?) ViewBag.arrowClick' оценить? Что относительно '@if (true)'? – Cheezmeister
не уверен, что вы имеете в виду. Как я могу определить, что он оценивает? – MikeD
извините - это было ложно ... глупая ошибка ... установите значение var в false в действие индекса и забыли его. Измените мой предыдущий набор. – MikeD