【发布时间】:2016-09-05 05:58:21
【问题描述】:
我有 MVC4 Web 应用程序,我在 .cshtml 页面中呈现部分视图 (.ascx)。我添加了一个下拉列表,它具有 OnSelectedIndexChanged 并且它永远不会触发。请看下面的代码
Dashboard.ascx
<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="Dashboard.ascx.cs" Inherits="iSPYCMS.Views.Dashboard" EnableViewState="true" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head id="Head1" runat="server">
<title>Charts Example</title>
</head>
<body style="padding:50px;background-color:white">
<form id="form1" runat="server">
<asp:DropDownList runat="server" ID="cmbTypeSeletion" Height="16px" Width="190px" EnableViewState="true" Enabled="true" OnSelectedIndexChanged="cmbTypeSeletion_SelectedIndexChanged">
<asp:ListItem Enabled="true" Text="Downloads" Value="Downloads"> </asp:ListItem>
<asp:ListItem Enabled="true" Text="Plays" Value="Plays"></asp:ListItem>
<asp:ListItem Enabled="true" Text="Completion" Value="Completion"></asp:ListItem>
</asp:DropDownList>
<div>
<script type="text/javascript" src="https://www.google.com/jsapi"> </script>
<asp:Literal ID="ltScripts" runat="server"></asp:Literal>
<div id="chart_div">
</div>
</div>
</form>
</body>
</html>
Dashboard.ascx.cs
namespace iSPYCMS.Views
{
public partial class Dashboard : ViewUserControl
{
protected void cmbTypeSeletion_SelectedIndexChanged(object sender, EventArgs e)
{
}
}
}
Index.cshtml
@{
Layout = "~/Views/Shared/_Layout.cshtml";
}
<div>
@Html.Partial("~/Views/Dashboard.ascx")
</div>
【问题讨论】:
-
您正在将 Web 表单与 MVC 混合使用.. 不好
-
是的,我知道事实上我必须使用谷歌图表,但我找不到任何好的 MVC 示例,所以我使用了用户控制
-
谷歌图表根本不需要网络表单/回发
-
我需要添加下拉菜单,并根据该选择更改图表数据
-
在下拉更改事件上绑定一个ajax请求
标签: c# asp.net razor ascx asp.net-webpages