dropdownlist onchange事件未启动

dropdownlist onchange event not firing

本文关键字:启动 事件 onchange dropdownlist      更新时间:2023-09-26

我有一个下拉列表,如下所示:

<asp:DropDownList ID="ddlExtraHoursStatus" runat="server" CssClass="dropdown" 
                                                Width="130px">
                                            </asp:DropDownList>

在我的代码中,我在Page_load上设置它的属性,以便在其"onchange"事件上调用JS函数。当我运行页面并更改下拉选择时,它非常有效。

我的问题是,当我在代码后面更改下拉列表的selectedvalue属性时,为什么onchange事件没有被触发(它调用JS函数)?????

我被困在这里,因为我的进一步过程取决于此。请帮助

在服务器端更改下拉列表的值后,页面加载为浏览器和javascript的新鲜页面(如果您没有使用更新面板)。因此,在客户端加载页面时,您需要调用onchange事件中调用的函数。您可以按如下方式进行操作(如果您使用的是jquery)

 jQuery(document).ready(function (){
  DropdwonOnChangeFunction();
 });

如果只想在下拉列表中的值发生更改时调用函数,则需要维护一个隐藏标志,该标志具有下拉列表中先前选定的值。您可以在代码隐藏中的页面加载开始时设置此字段。然后使用该字段中的值,您可以决定是否调用该函数。如下所示。

  jQuery(document).ready(function (){
     if( $("#hdnDdlOldValue").val()!=$("#ddlExtraHoursStatus").val())
     {
      DropdwonOnChangeFunction();
      }
     });

这里我使用了静态id。您可以使用客户端ID。