更新面板内的链接按钮不会从后面的代码启用

时间:2014-02-06 05:03:21

标签: asp.net updatepanel ajaxuploader

在usercontrol中,我有一个更新面板,其中包含一个AjaxFileUpload控件和一个链接按钮,用于查看AjaxFileUpload控件正在上载的文件。 Ascx页面是:

<asp:UpdatePanel runat="server" ID="UpdatePanelUpload" UpdateMode="Conditional">
        <ContentTemplate>
            <asp:Panel runat="server" ID="pnlUploadFile">
                <div class="button-action-row">
                    <h2>
                        <asp:Label ID="lblUploadHeader" runat="server" Text="Upload File"></asp:Label>
                    </h2>
                </div>
                <div class="button-action-row">
                    <asp:AjaxFileUpload ID="AjaxFileUpload1" runat="server" ContextKeys="one" OnUploadComplete="UploadComplete" />
                <span class="right">
                        <asp:LinkButton ID="lnkBtnViewUploadDoc" runat="server" Text="View Supplier Contract"
                            OnClick="lnkBtnViewUploadDoc_Click"></asp:LinkButton></span>
                </div>
            </asp:Panel>
        </ContentTemplate>
        <Triggers>
            <asp:PostBackTrigger ControlID="lnkBtnViewUploadDoc" />
        </Triggers>
    </asp:UpdatePanel> 

此用户控件在模式弹出窗口中加载。在加载usercontrol时,它检查文件是否在该位置可用,如果没有lnkBtnViewUploadDoc被禁用,则工作正常。在UploadComplete事件中,我启用了lnkBtnViewUploadDoc。但这不会发生。我还尝试将lnkBtnViewUploadDoc移动到另一个面板,并在AjaxFileUpload1的UploadComplete事件上更新了该updatepanel。我在哪里错了。

2 个答案:

答案 0 :(得分:0)

尝试将CausesValidation='false'包含在您的LinkBut​​ton中。

答案 1 :(得分:0)

您可以尝试使用AsyncPostBackTrigger

吗?
<asp:AsyncPostBackTrigger ControlID="lnkBtnViewUploadDoc" EventName="Event name"></asp:AsyncPostBackTrigger>