我知道这并不能让MVC的指导方针得到满足。但在这种情况下,重复整个Controller方法而不是更新视图中的视图似乎相当愚蠢。基本上我只想在选中复选框时显示某些内容,并且在不再检查后再次显示该内容时会再次显示。我想也许做一个布尔值并在视图中用if语句调整它。这意味着整个页面必须重新加载并仅显示基于已选中或未选中复选框的数据。有没有办法做到这一点,还是我应该坚持MVC模型,进行局部视图并根据该建议或其他建议重新加载信息?我已经加载了模型,所以在任何地方都不需要这些信息,因为它只是视图的显示方式。
答案 0 :(得分:1)
您可以使用部分视图来存储依赖于复选框的内容。
在复选框上单击,如果您确实有任何数据在该区域中更新,则可以执行ajax调用以加载该部分视图。
如果您只需要根据复选框点击隐藏/显示,只需使用jquery隐藏或显示该div。
<input type="checkbox" id="myCheckbox">
<div id="ShowHideArea">
<p>some content</p>
</div>
<script>
$(function() {
$('#myCheckbox').change(function() {
$('#ShowHideArea').toggle($(this).is(':checked'));
});
});