Asp.Net Dropdown onchange事件不起作用

时间:2015-08-08 10:29:13

标签: javascript asp.net

在我的公司想要修改一个ASp.net项目,

<asp:DropDownList ID="drdIssuer" runat="server" CssClass="txtfield" AutoPostBack="True" OnSelectedIndexChanged="drdIssuer_SelectedIndexChanged" onchange="showvalues();">
                    <asp:ListItem>Val1</asp:ListItem>
                    <asp:ListItem>Val1</asp:ListItem>
                    <asp:ListItem>Val1</asp:ListItem>
                    <asp:ListItem>Val1</asp:ListItem>

                </asp:DropDownList>

这是html asp代码,和JAvascript一样,

 <script type="text/javascript">
       function showvalues()
       {
           alert('Yes');
       }
       </script>

当我更改下拉列表时,我想工作showvalues()函数我该怎么做,你们能帮助我吗....

2 个答案:

答案 0 :(得分:0)

您可以为asp:dropdown呈现的select元素注册一个html事件。

drdIssuer.Attributes["onchange"] = "showvalues();";

答案 1 :(得分:0)

1.您收到该错误,因为您可能没有添加命名空间

using System.Data.SqlClient;
  1. 另外,您在评论中提到您收到错误
  2.   

    我在&#39; /&#39;中收到错误服务器错误应用

    为此,您可以查看Geeks blogs中提到的详细解决方案。

    同时查看here因为,这不是一个主要问题,根据您提供的信息,上述解决方案应该有效。

    drdIssuer_SelectedIndexChanged的整个代码隐藏应该是这样的

    using System.Data.SqlClient; //namespace
    
    
    protected void drdIssuer_SelectedIndexChanged(object sender, EventArgs e) 
     { 
         SqlParameter[] param = new SqlParameter[1];
         if (drdIssuer.SelectedValue == "Val1")
         {
             Response.Write(@"<script langauge='text/javascript'>alert('...Alert Goes here...');</script>");
         }
     }
    

    此外,如果您从值中删除onChange函数。您的Response.Write也适用于Val1

    <asp:DropDownList ID="drdIssuer" runat="server" OnSelectedIndexChanged="drdIssuer_SelectedIndexChanged"
            CssClass="txtfield" AutoPostBack="True">
            <asp:ListItem>Val1</asp:ListItem>
            <asp:ListItem>Val2</asp:ListItem>
            <asp:ListItem>Val3</asp:ListItem>
            <asp:ListItem>Val4</asp:ListItem>
        </asp:DropDownList>
    

    希望有所帮助。