我正在为一个项目使用 Asp.Net MVC3。
在其中一个页面中,我使用的是 MS Charts。在视图中,我有一个显示图表的图像,如下所示:
<img src="@Url.Action("RenderCharts", "Home", new
{
XAxisColor = ViewBag.XAxisColor,
YAxisColor = ViewBag.YAxisColor,
})" alt="Charts" runat="server" />
我有 2 个复选框,用于更改图表轴颜色。单击复选框时,将提交页面并存储复选框状态并基于该图表呈现:
bool XAxisColor = (@ViewBag.XAxisColor) ?? true;
bool YAxisColor = @ViewBag.YAxisColor ?? false;
@Html.CheckBox("chkXAxisColor", XAxisColor, new { @Id = "chkXAxisColor",
onClick = "this.form.submit();" })
X Axis Color
@Html.CheckBox("chkYAxisColor", YAxisColor, new { @Id = "chkScatter",
onClick = "this.form.submit();" })
Y Axis Color
首次加载页面时,会调用RenderCharts() 操作并呈现图表。但是,当我单击任何 CheckBox 时,RenderCharts() Action会被调用两次。
我无法理解这个问题。我创建了一个示例应用程序,可以从这里下载https://www.dropbox.com/s/ig8gi3xh4cx245j/MVC_Test.zip
任何帮助,将不胜感激。提前致谢。