0

モーダルポップアップでこの奇妙な問題が発生しています。何らかの理由で、ドロップダウン項目を選択すると、更新ボタンでクリック イベントが発生しません。しかし、ドロップダウンをデフォルト値のままにしておきます。更新ボタンは問題なく機能します。

これが私のaspxページコードです

<asp:Button ID="Button1" CssClass="hide" runat="server" Text="Button" />

<ajaxToolkit:ModalPopupExtender runat="server" ID="cfPopUp" PopupControlID="Panel4"
    TargetControlID="Button1" OkControlID="cfUpdateBtn" CancelControlID="cfCancelBtn" />
<asp:Panel ID="Panel4" runat="server" CssClass="modalPopup">
    <asp:UpdatePanel ID="UpdatePanel2" runat="Server">
        <ContentTemplate>
            <asp:Panel ID="Panel13" CssClass="" runat="server">
                <asp:Panel ID="Panel14" CssClass="" runat="server">
                    <div style="padding: 10px; border: 3px solid black; background-color: White; color: Black;">
                        <asp:Label ID="Label25" Width="200px" runat="server" Text="Health and Safety Net" /><div
                            class="seperator">
                        </div>
                        <table class="style143">
                            <tr>
                                <td class="style185">
                                    <asp:Label ID="cfCategorylbl" runat="server" Text="Category:"></asp:Label>:
                                </td>
                                <td>
                                    <asp:DropDownList ID="cbFactors_Categories" runat="server" Width="350px" Font-Names="Tahoma"
                                        Font-Size="Small" ForeColor="DimGray" Height="24px" CssClass="style75">
                                    </asp:DropDownList>
                                    <ajaxToolkit:CascadingDropDown ID="CascadingDropDown3" runat="server" TargetControlID="cbFactors_Categories"
                                        Category="categories" ServiceMethod="getCategory" ServicePath="~/2012/IrSubmitWebService.asmx"
                                        PromptText="Select Category" />
                                </td>
                                <td align="center" rowspan="3" valign="top">
                                    <asp:Label ID="lblFactor_ID" runat="server" Font-Names="Tahoma" Font-Size="Small"
                                        ForeColor="DimGray" Style="font-style: italic" TabIndex="56"></asp:Label>
                                    <cc1:DynamicPopulateExtender ID="lblFactor_ID_DynamicPopulateExtender" runat="server"
                                        Enabled="True" TargetControlID="lblFactor_ID" BehaviorID="dp1" ServiceMethod="getFactorID"
                                        ServicePath="~/2012/IrSubmitWebService.asmx">
                                    </cc1:DynamicPopulateExtender>
                                    <hr class="style157" />
                                    <asp:Label ID="cfID" runat="server" Font-Names="Tahoma" Font-Size="Small" ForeColor="DimGray"
                                        Style="font-style: italic" Width="400px" TabIndex="57"></asp:Label>
                                </td>
                            </tr>
                            <tr>
                                <td class="style185">
                                    <asp:Label ID="cfTypeslbl" runat="server" Text="Type:"></asp:Label>
                                </td>
                                <td>
                                    <asp:DropDownList ID="cbFactors_Types" runat="server" ForeColor="DimGray" Height="24px"
                                        TabIndex="54" Width="350px" Font-Names="Tahoma" Font-Size="Small" CssClass="style75">
                                    </asp:DropDownList>
                                    <cc1:CascadingDropDown ID="cbFactors_Types_CascadingDropDown" runat="server"
                                        TargetControlID="cbFactors_Types" ParentControlID="cbFactors_Categories" Category="type"
                                        ServiceMethod="getTypeofAction" ServicePath="~/2012/IrSubmitWebService.asmx"
                                        PromptText="Select Type">
                                    </cc1:CascadingDropDown>
                                </td>
                            </tr>
                            <tr>
                                <td class="style185">
                                    <asp:Label ID="cfFactorslbl" runat="server" Text="Factor:"></asp:Label>
                                </td>
                                <td>
                                    <asp:DropDownList ID="cbFactors_Factors" runat="server" ForeColor="DimGray" Height="24px"
                                        TabIndex="55" Width="350px" Font-Names="tahoma" Font-Size="Small" CssClass="style75">
                                    </asp:DropDownList>
                                    <cc1:CascadingDropDown ID="cbFactors_Factors_CascadingDropDown" runat="server"
                                        TargetControlID="cbFactors_Factors" ParentControlID="cbFactors_Types" Category="category"
                                        ServiceMethod="getFactor" ServicePath="~/2012/IrSubmitWebService.asmx" PromptText="Select Factor">
                                    </cc1:CascadingDropDown>
                                </td>
                            </tr>
                            <tr>
                                <td class="style185">
                                    <asp:Label Text="Justification:" ID="cfJustificationlbl" runat="server"></asp:Label>
                                </td>
                                <td colspan="2">
                                    <asp:TextBox ID="txtJustification" runat="server" ForeColor="DimGray" Height="29px"
                                        Style="font-family: Tahoma; font-size: small" TabIndex="56" TextMode="MultiLine"
                                        ToolTip="Provide a justification for this factor." Width="775px" Font-Names="Tahoma"
                                        Font-Size="Small"></asp:TextBox>
                                   </td>
                            </tr>
                        </table>
                        <br />
                        <div style="text-align: center">
                            <asp:Button CausesValidation="false" ID="cfUpdateBtn" runat="server"
                                Text="Update" CssClass="button" /><span style="margin-left: 10px"><asp:Button CausesValidation="false"
                                    ID="cfCancelBtn" runat="server" Text="Cancel" CssClass="button" /></span></div>
                    </div>
                </asp:Panel>
            </asp:Panel>
        </ContentTemplate>
    </asp:UpdatePanel>
</asp:Panel>

および私の更新用のコードビハインド (ポップアップを閉じるだけです)

Protected Sub cfUpdateBtn_Click(sender As Object, e As EventArgs) Handles cfUpdateBtn.Click
    cfPopUp.Hide()
End Sub

私の人生では、ドロップダウンがデフォルト値でないときに更新ボタンが機能しない理由がわかりません。

助けてくれてありがとう

4

2 に答える 2

0

私は基本的にモーダルポップアップを再構築し、パネルを更新しました

<asp:Panel ID="pnlEditPopup" runat="server" CssClass="modalPopup">
    <asp:UpdatePanel ID="UpdatePanel2" runat="server">
    <ContentTemplate>

        <asp:Panel ID="pnlEditPopupContent" runat="server">
            <div style="padding: 10px; border: 3px solid black; background-color: White; color: Black;">
            <table cellpadding="0" cellspacing="4" border="0">
            <tr>
                <td class="name">Category:</td>
                <td class="value">
                    <asp:DropDownList id="ddCat" runat="server">
                        <asp:listitem value="">No Selection</asp:listitem>
                        <asp:listitem value="Action">Action</asp:listitem>
                        <asp:listitem value="Worksite">Worksite</asp:listitem>
                        <asp:listitem value="Human Factors">Human Factors</asp:listitem>
                        <asp:listitem value="System Factors">System Factors</asp:listitem>
                    </asp:DropDownList>
                </td>
            </tr>
            <tr>
                <td class="name">Type:</td>
                <td class="value">
                    <asp:DropDownList id="ddType" runat="server" />
                    <ajaxToolkit:CascadingDropDown ID="ccType" runat="server"
                        TargetControlID="ddType"
                        ParentControlID="ddCat"
                        PromptText="No Selection"
                        LoadingText="Please Wait..."
                        ServicePath="~/2012/IrSubmitWebService.asmx"
                        ServiceMethod="getTypeofAction"
                        Category="Other"
                    />
                </td>
            </tr>
             <tr>
                <td class="name">Factor:</td>
                <td class="value">
                    <asp:DropDownList id="ddfactor" runat="server" />
                    <ajaxToolkit:CascadingDropDown ID="ccFactor" runat="server"
                        TargetControlID="ddfactor"
                        ParentControlID="ddType"
                        PromptText="No Selection"
                        LoadingText="Please Wait..."
                        ServicePath="~/2012/IrSubmitWebService.asmx"
                        ServiceMethod="getFactor"
                        Category="Other"
                    />
                </td>
            </tr>
            <tr>
                <td>
                    Justification:
                    <asp:Label ID="factorID" runat="server" Visible="false"></asp:Label>
                </td>

                <td>
                    <asp:TextBox ID="txtJustification" runat="server" ForeColor="DimGray" Height="100px"
                    Style="font-family: Tahoma; font-size: small" TabIndex="56" TextMode="MultiLine"
                    ToolTip="Provide a justification for this factor." Width="300px" Font-Names="Tahoma"
                    Font-Size="Small"></asp:TextBox>
                </td>
            </tr>
             <tr>
                <td>
                    Factor ID<br />
                    and Description:             
                </td>
                <td>
                    <asp:Label ID="factor_id_Desc" runat="server" Width="300px" Font-Names="Tahoma" Font-Size="Small"
                        ForeColor="DimGray" TabIndex="56"></asp:Label>
                    <cc1:DynamicPopulateExtender ID="DynamicPopulateExtender1" runat="server"
                        Enabled="True" TargetControlID="factor_id_Desc" BehaviorID="dp1" ServiceMethod="getFactorID"
                        ServicePath="~/2012/IrSubmitWebService.asmx">
                    </cc1:DynamicPopulateExtender>
                </td>
            </tr>
            <tr>
                <td colspan="2" align="center">
                    <asp:Button ID="btnOkEditPopup" runat="server" Text="Ok" CssClass="button"/>
                    <span style="margin-left:10px"><asp:button id="btnCancelEditPopup" runat="server" text="Cancel" CssClass="button"/></span>
                </td>
            </tr>

            </table>
            </div>
        </asp:Panel>

    </ContentTemplate>
    </asp:UpdatePanel>
    </asp:Panel>

    <ajaxToolkit:ModalPopupExtender ID="mpeEdit" runat="server"
        TargetControlID="btnOpenEditPopup"
        PopupControlID="pnlEditPopup"
        />

私の問題を修正しました。質問したときになぜ機能しなかったのかはまだわかりませんが、解決できました。私のために調べてくれたすべての人に感謝します。

于 2012-07-10T17:42:36.693 に答える
0

考えられる理由は、ドロップダウンリストを Web サービスにバインドしている可能性があります。ドロップダウン リストの項目をクリックするたびに、Web サービスが呼び出される場合があります。webservice が呼び出された場合、ページが再度読み込まれる可能性がありますか? 機能しない正確な理由はわかりません。サービスが呼び出されたときに発生したサービスの動作を確認する必要があります。

于 2012-07-09T18:29:56.920 に答える