【问题标题】:How to add an event handler to a recurring DropDownList如何将事件处理程序添加到重复出现的 DropDownList
【发布时间】:2017-11-26 22:27:10
【问题描述】:

我正在使用 ASP.Net/VB.NET 开发具有重复设计的网站 - 用户必须为几个不同的主题输入相同类型的数据。

我无法让 .SelectedIndexChange 为我的应用程序工作。我想使用 JavaScript/JQuery 来完成这项工作。

这是我现在拥有的代码,它不起作用。不会抛出任何错误,但永远不会调用 AppChange() 方法。

List.Items.Add("Choose...")
List.Items.Add("Yes")
List.Items.Add("No")
'List.AutoPostBack = True
'AddHandler List.SelectedIndexChanged, AddressOf ListChange

请注意,我已将最后两行注释掉,因为我正在尝试其他事情。

Dim ListID = String.Concat("ListOption", DBReader("nListID"))
List.ID = ListID
AddHandler List.SelectedIndexChanged, AddressOf ListChange
                                d.Controls.Add(List)

这里是更改事件的方法

Protected Sub ListChange(sender As Object, e As EventArgs)
        Label1.Text = "It worked"

    End Sub

源代码是这样的……

<td align="right" style="font-family:Calibri;">Options</td><td></td><td><select name="ListOption1" id="ListOption1" style="width:230px;">

显然有些东西没有注册,我不太确定是什么。

【问题讨论】:

    标签: javascript jquery asp.net vb.net selectedindexchanged


    【解决方案1】:

    您是否尝试向您的子系统添加处理程序?

    Private Sub ListChange(sender As Object, e As EventArgs) Handles ListChange.SelectedIndexChanged
    
        Label1.Text = "It worked"
    
    End Sub
    

    【讨论】:

    • 我收到一个错误,它说“Handles 子句需要在包含类型或其基类型之一中定义的 WithEvents 变量”
    • @AmberRebeccaHowe 在您的变量声明中,您需要添加 WithEvents 修饰符。
    【解决方案2】:

    我的开发人员导师帮助我完成了这项任务。

    在 .aspx 文件中,像这样添加函数

    <script type="text/javascript">
        function Change(value, id)
        {
            alert("It worked");
        }
    </script>
    

    在 .aspx.vb 文件中,

    List.Attributes.Add("onchange", "javascript:Change(this.value, this.id)")
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-02-26
      • 2018-08-24
      • 1970-01-01
      • 2014-08-03
      • 1970-01-01
      • 2018-05-28
      • 1970-01-01
      • 2012-05-10
      相关资源
      最近更新 更多