在jquery弹出窗口中显示的dropdownlist之后,Selectedindexchanged没有触发

时间:2013-09-18 20:00:22

标签: jquery asp.net popup updatepanel selectedindexchanged

我正在制作一个用户控件,整个内容都在一个updatepanel中。 我在div中放了一个下拉列表(以及其他一些东西),将div显示为none,并在点击按钮后弹出jquery弹出窗口。

问题在于,当它不在jquery弹出窗口内(并且从页面加载开始可见)时,它可以无缝地工作。但是在jquery popup中打开它后,它拒绝对selectedindexchanged做出反应。

以下是代码的重要部分:

加载控件的示例页面:

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="homebed.aspx.cs" Inherits="txwebsite._testbed.homebed" %>
<%@ Register TagPrefix="tx" TagName="querycriteria" Src="../_userctrls/querycriteria.ascx" %>

该示例页面内的Scriptmanager:

<asp:ScriptManager ID="ScriptManager1" EnablePartialRendering="true" EnableViewState="true" runat="server"></asp:ScriptManager>

我的用户控件的第一行:

<%@ Control Language="C#" EnableViewState="true" AutoEventWireup="true" CodeBehind="querycriteria.ascx.cs"
    Inherits="TelefileWebsite._userctrls.querycriteria" %>
<asp:UpdatePanel ID="UpdatePanel1" UpdateMode="Conditional" ChildrenAsTriggers="true" runat="server">
<Triggers>
<asp:AsyncPostBackTrigger ControlID="ddProvince_kharid" EventName="SelectedIndexChanged" />
</Triggers>
<ContentTemplate>

包含dropdownlist的div的定义:

<div id="divContentToPopup" style="display:none;">

未触发选择的下拉列表已解决并导致问题:

<asp:DropDownList ID="ddProvince_kharid" AutoPostBack="true" 
                        CssClass="ddforpopup" style="margin-right:7px;" runat="server" 
                        onselectedindexchanged="ddProvince_kharid_SelectedIndexChanged">
                    </asp:DropDownList>            

selectedindexchanged definition:

protected void ddProvince_kharid_SelectedIndexChanged(object sender,EventArgs e)     {

整个jquery代码:

$(function () {

    // ---------------------------------------
    // Popup opening
    // ---------------------------------------
    var fn_kharid_LoadGeoWindow = function (e) {
        $(this).speedoPopup(
    {
        width: 598,
        useFrame: false,
        effectIn: "zoomIn",
        effectOut: "slideZoom",
        css3Effects: "zoomOut",
        href: "#divContentToPopup"
    });
    }

    var btnchooseregion_kharid = $('#btnChooseRegion_kharid');
    btnchooseregion_kharid.click(fn_kharid_LoadGeoWindow);

});  // Document Ready

我检查了整个stackoverflow和许多其他网站,但没有一个建议解决方案:

1 个答案:

答案 0 :(得分:0)