[ aspx代码:]
<form id="schProdNumId" method="post" runat="server">
<asp:dropdownlist id="d1" autopostback="True" runat="server"></asp:dropdownlist>
<asp:dropdownlist id="d2" runat="server"></asp:dropdownlist>
</form>
[ cs代码: ]
public class schProdNumId : System.Web.UI.Page
{
protected System.Web.UI.WebControls.DropDownList d1;
protected System.Web.UI.WebControls.DropDownList d2;
protected ArrayList arrLi;
private string dsn;
private SqlConnection conn;
private void Page_Load(object sender, System.EventArgs e)
{
dsn=System.Configuration.ConfigurationSettings.AppSettings["dsn"];
conn=new SqlConnection(dsn);
if(!Page.IsPostBack){
BindD1();
}
}
//获取数据源
protected ArrayList GetSource(){
DataSet ds=new DataSet();
string sql="select createTime from prodNum";
SqlDataAdapter comd=new SqlDataAdapter(sql,conn);
comd.Fill(ds,"createTiem");
DataTable dt=ds.Tables[0];
ArrayList li=new ArrayList();
for(int i=0;i<dt.Rows.Count;i++){ //过滤重复数据
string val=dt.Rows[i]["createTime"].ToString().Trim();
if(!li.Contains(val)){
li.Add(val) ;
}
}
return li;
}
//绑定dateFrom
void BindD1(){
arrLi=GetSource();
d1.DataSource=arrLi;
d1.DataBind(); }//自动注册的事件
#region Web Form Designer generated code
override protected void OnInit(EventArgs e)
{
//
// CODEGEN:该调用是 ASP.NET Web 窗体设计器所必需的。
//
InitializeComponent();
base.OnInit(e);
}
/// <summary>
/// 设计器支持所需的方法 - 不要使用代码编辑器修改
/// 此方法的内容。
/// </summary>
private void InitializeComponent()
{
this.d1.SelectedIndexChanged += new System.EventHandler(this.d1_SelectedIndexChanged);
this.Load += new System.EventHandler(this.Page_Load);
}
#endregion ///下拉菜单改变事件/// private void d1_SelectedIndexChanged(object sender, System.EventArgs e) {
Response.Write("<script language=javascript>alert('changed event ok');</script>");
}..................
[ 错误提示 ]当我改变下拉菜单时,没有触发d1_SelectedIndexChanged()事件!
前台提示的错误是javascript错误:对象不支持此属性或方法!!!!!!!
我晕倒,为什么不能触发selectedIndexChanged事件呢?没理由啊
希望解决问题,不要灌水,我很急,谢谢帮助
<form id="schProdNumId" method="post" runat="server">
<asp:dropdownlist id="d1" autopostback="True" runat="server"></asp:dropdownlist>
<asp:dropdownlist id="d2" runat="server"></asp:dropdownlist>
</form>
[ cs代码: ]
public class schProdNumId : System.Web.UI.Page
{
protected System.Web.UI.WebControls.DropDownList d1;
protected System.Web.UI.WebControls.DropDownList d2;
protected ArrayList arrLi;
private string dsn;
private SqlConnection conn;
private void Page_Load(object sender, System.EventArgs e)
{
dsn=System.Configuration.ConfigurationSettings.AppSettings["dsn"];
conn=new SqlConnection(dsn);
if(!Page.IsPostBack){
BindD1();
}
}
//获取数据源
protected ArrayList GetSource(){
DataSet ds=new DataSet();
string sql="select createTime from prodNum";
SqlDataAdapter comd=new SqlDataAdapter(sql,conn);
comd.Fill(ds,"createTiem");
DataTable dt=ds.Tables[0];
ArrayList li=new ArrayList();
for(int i=0;i<dt.Rows.Count;i++){ //过滤重复数据
string val=dt.Rows[i]["createTime"].ToString().Trim();
if(!li.Contains(val)){
li.Add(val) ;
}
}
return li;
}
//绑定dateFrom
void BindD1(){
arrLi=GetSource();
d1.DataSource=arrLi;
d1.DataBind(); }//自动注册的事件
#region Web Form Designer generated code
override protected void OnInit(EventArgs e)
{
//
// CODEGEN:该调用是 ASP.NET Web 窗体设计器所必需的。
//
InitializeComponent();
base.OnInit(e);
}
/// <summary>
/// 设计器支持所需的方法 - 不要使用代码编辑器修改
/// 此方法的内容。
/// </summary>
private void InitializeComponent()
{
this.d1.SelectedIndexChanged += new System.EventHandler(this.d1_SelectedIndexChanged);
this.Load += new System.EventHandler(this.Page_Load);
}
#endregion ///下拉菜单改变事件/// private void d1_SelectedIndexChanged(object sender, System.EventArgs e) {
Response.Write("<script language=javascript>alert('changed event ok');</script>");
}..................
[ 错误提示 ]当我改变下拉菜单时,没有触发d1_SelectedIndexChanged()事件!
前台提示的错误是javascript错误:对象不支持此属性或方法!!!!!!!
我晕倒,为什么不能触发selectedIndexChanged事件呢?没理由啊
希望解决问题,不要灌水,我很急,谢谢帮助
解决方案 »
- SQL语句
- 一个关于矢量图操作的问题 急急急
- 无法打开登录所请求的数据库 "MYBOOKSHOP"。登录失败。
- 在IIS里面预览总是提示无法解析属性“mode”的值。错误为: 枚举值必须是以下各值中的一个: RemoteOnly, On, Off。
- vs.net 2005 Source View中不能切换到Design View ?help 急在线等 谢谢!
- 用window.open打开的子窗口,子窗口关闭时,能实现触发父窗口中的javascript函数代码吗??
- 背景音乐问题
- 在ASP环境下成批生成随机数值的代码,谁有现成的,送分谢了。
- Sql Server的存储过程问题
- 求教ASP.NET页面控件问题
- 为什么DataGrid分页时整个DataGrid都不可见,郁闷!!!
- 我这样做能防止注入式攻击吗?
试一下。
<!--
function __doPostBack(eventTarget, eventArgument) {
var theform = document.schProdNumId;
theform.__EVENTTARGET.value = eventTarget;
theform.__EVENTARGUMENT.value = eventArgument;
theform.submit();
}
// -->
</script>
如果不行可以重新注册一下 aspnet_regiis /i
private void d1_SelectedIndexChanged(object sender, System.EventArgs e) {
Response.Write("<script language=javascript>alert('changed event ok');</script>");
}
to
private void d1_SelectedIndexChanged(object sender, System.EventArgs e) {
Page.RegistStartScript("<script language=javascript>window.alert('changed event ok');</script>");
}
<script language="javascript">
<!--
function __doPostBack(eventTarget, eventArgument) {
var theform;
if (window.navigator.appName.toLowerCase().indexOf("netscape") > -1) {
theform = document.forms["Form1"];
}
else {
theform = document.Form1;
}
theform.__EVENTTARGET.value = eventTarget.split("$").join(":");
theform.__EVENTARGUMENT.value = eventArgument;
theform.submit();
}
// -->
</script>
你的页面是自己写的,还是用VS2002生成的呢?
写其他C# 语句看事件是否触发,
如果触发问题出在javascript 语句上,
如果没触发就看如何让它触发.
狂吐~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
原来是一个按钮的问题!!!!!!!!!!<asp:textbox id="submit" runat="server"/>
把id号码改成其他的就OK了,没想到textbox 不能用submit做ID号码的
这是什么原因啊
也许theform.submit不能被区别为是form的控件还是他的submit方法吧