【问题标题】:Selected index changed event not being fired in modal popup?在模式弹出窗口中未触发选定的索引更改事件?
【发布时间】:2012-10-13 21:19:12
【问题描述】:

我有以下代码应该在模式弹出窗口中运行:

#region events


protected void Page_Load(object sender, EventArgs e)
{
    if (!IsPostBack)
    {
        dt = DataObj.GetDataTable("GetScheduleNames");
        foreach (DataRow myrow in dt.Rows)
        {
            SchedNameLst.Add(Convert.ToString(myrow["ScheduleName"]));
        }
        SchedNameListDD.DataSource = SchedNameLst;
        SchedNameListDD.DataBind();

    }
}

 protected void SchedNameListDD_SelectedIndexChanged(object sender, EventArgs e)
{
    // should be in selected index fired event
    SchedName.Text = SchedNameListDD.SelectedItem.Text;
    string name = SchedNameListDD.SelectedItem.Text;
    dt = DataObj.GetDataTable("GetSchedDetails", name);

    foreach (DataRow myrow in dt.Rows)
    {
        StartTime.Text = myrow["StartTime"].ToString();
        EndTime.Text = myrow["EndTime"].ToString();
    }
    dt = DataObj.GetDataTable("GetSchedDetailsSat", name);
    foreach (DataRow myrow in dt.Rows)
    {
        SatSt.Text = myrow["StartTime"].ToString();
        SatEt.Text = myrow["EndTime"].ToString();
    }
 }


#endregion

当我在下拉列表中更改我的项目选择时,我的 selectedIndexChanged 事件不会被触发.. 是这样吗?

【问题讨论】:

  • 你在使用 JQuery 对话框吗?提高弹出窗口?
  • 我没有使用 J Query ...已经在使用 ModalPopupExtender

标签: asp.net selectedindexchanged


【解决方案1】:
  1. 确保您已在控件上启用 AutoPostBack,即AutoPostBack = "true"
  2. 确保通过在 Page 或 UserControl 指令中设置 EnableViewState="true" 来启用视图状态

【讨论】:

  • 什么都不需要。而且您的代码没有任何问题。在您的页面中检查 AutoEventWireup="true"。
【解决方案2】:

使用 onchange="javascript: __doPostBack('Dropdownlist','Patameters')"

【讨论】:

  • 这对我有用。
  • 设置 AutoPostBack="false" 否则你的页面会刷新两次。仅使用 onchange="javascript: __doPostBack('DropDownList','Arguments')"
猜你喜欢
  • 2022-10-01
  • 1970-01-01
  • 1970-01-01
  • 2013-03-23
  • 2016-08-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多