OnClientSelectedIndexChanged 在下拉列表更改时未触发

OnClientSelectedIndexChanged not firing on dropdown change

提问人:SethD02 提问时间:10/3/2023 更新时间:10/4/2023 访问量:41

问:

更改下拉所选值时,我的 OnClientSelectedIndexChanged javascript 函数未触发。我在 javascript 函数的第一行放置了一个断点,但它从未到达。

<telerik:RadCodeBlock ID="RadCodeBlock1" runat="server">       
        <script type="text/javascript" >
            function ddl_AutoSchedule_SelectedIndexChanged(sender, eventargs) {
                var date_DueDate = $find("#date_DueDate");
                var date_PlannedStart = $find("#date_PlannedStart");
                var date_PlannedFinish = $find("#date_PlannedFinish");
                date_DueDate.value = Now.AddDays(sender.value);
                date_PlannedStart.value = Now.AddDays(0);
                date_PlannedFinish.value = Now.AddDays(sender.value);
            }
        </script>
    </telerik:RadCodeBlock>

还有我的下拉列表:

<telerik:RadDropDownList ID="ddl_AutoSchedule" runat="server" Enabled="false" AutoPostBack="True" OnClientSelectedIndexChanged="ddl_AutoSchedule_SelectedIndexChanged">
  <Items>
     <telerik:DropDownListItem Value="0" Text="Select a Schedule" />
     <telerik:DropDownListItem Value="30" Text="30 Days" />
     <telerik:DropDownListItem Value="45" Text="45 Days" />
     <telerik:DropDownListItem Value="60" Text="60 Days" />
     <telerik:DropDownListItem Value="90" Text="90 Days" />
     <telerik:DropDownListItem Value="120" Text="120 Days" />
     <telerik:DropDownListItem Value="180" Text="180 Days (6 Months)" />
     <telerik:DropDownListItem Value="270" Text="270 Days (9 Months)" />
     <telerik:DropDownListItem Value="365" Text="365 Days (1 Year)" />
  </Items>
</telerik:RadDropDownList>
JavaScript asp.net vb.net 前端 Telerik

评论


答:

0赞 JuanR 10/4/2023 #1

查看文档中的示例,无需使用控件包装 JS 函数。RadCodeBlock

只需将块写入页面,它就可以工作了。<script>

<script type="text/javascript" >
    function ddl_AutoSchedule_SelectedIndexChanged(sender, eventargs) 
    {
        var date_DueDate = $find("#date_DueDate");
        var date_PlannedStart = $find("#date_PlannedStart");
        var date_PlannedFinish = $find("#date_PlannedFinish");
        date_DueDate.value = Now.AddDays(sender.value);
        date_PlannedStart.value = Now.AddDays(0);
        date_PlannedFinish.value = Now.AddDays(sender.value);
    }
</script>

评论

0赞 SethD02 10/4/2023
只是尝试了您的解决方案,但无济于事。事实上,调试器说我的断点不可能被命中断点。太困惑了......
0赞 JuanR 10/4/2023
@SethD02 我个人不将 VS 用于 JS 断点。使用浏览器开发工具设置断点(在“源”中),并在命中时通知我。
0赞 SethD02 10/4/2023
我能够使用开发工具让它命中断点,谢谢。事实证明,使用$find找不到控件
0赞 JuanR 10/4/2023
您是否正在使用 ?ToolkitScriptManager