2016-08-01 3 views
0

私のマスターページには、自分のエラーを表示するコンテンツページから呼び出すdiv "ErrorDiv"があります。問題は、ボタンがUpdate Panelの中​​に含まれていた場合、divからコードを呼び出すときにdivが表示されないということです。私はこの問題を解決するためのトリックがあると確信しています、私はあなたの助けに感謝します。以下 は私のコードです:コンテンツページ内のコンテンツパネル内のボタンは、表示するマスターページからdivを呼び出すことはできません

マスターページ:

<asp:Panel ID="pnlMainForm" runat="server"> 
<form id="form1" runat="server" > 
<asp:Panel id="CommonPanelError" runat="server" CssClass="alertMSG"  
    visible="false"> 
    <div id="ErrorDiv" class="ErrorBox" > 
    <table> 
    <tr style="vertical-align:top"> 
    <td><img src="../Images/Icons/error.png" alt="" style="vertical-    
     align:middle" id="img2" runat="server" />&nbsp&nbsp </td> 
    <td style="width:200px"> 
     <span style ="font-weight :bold ">ERROR</span><br /> 
     <asp:Label id="errorMsgBox" runat="server" > errorTest 
     </asp:Label> 
    </td> 
    <td>&nbsp&nbsp&nbsp&nbsp <a href ="#"><img onclick="CloseMyErrorBox();" 
     id ="closeErrorBox" src="../Images/Icons/warning4.png" alt=""  
     runat="server" /></a> 
    </td> 
    </tr> 
    </table> 
    </div> 
    </asp:Panel> 
</form> 
</asp:Panel>   

コンテンツページ:

<asp:UpdatePanel ID="UPAll" runat="server"> 
<ContentTemplate> 
    <asp:Panel ID="pnlInsuredID" runat="server"> 
    <asp:LinkButton ID="lnkBtnphyCode" runat="server"> 
    <asp:Image ID="Image3" runat="server" ImageUrl="~/images/BAL/go.gif" /> 
    </asp:LinkButton> 
    </asp:Panel> 
</ContentTemplate> 
</asp:UpdatePanel> 

コード私のコンテンツページの後ろに:

Protected Sub lnkBtnphyCode_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles lnkBtnphyCode.Click 

If Trim(txtPhysicianCode.Text) = "" Then 
    Dim c As Panel = CType(Me.Master.FindControl("CommonPanelError"), Panel) 
     If c IsNot Nothing Then 
      c.Attributes.Add("display", "block") 
     End If 
    Dim c1 As Label = CType(Me.Master.FindControl("errorMsgBox"), Label) 
    Dim str = c1.Text 
    errDotNet(str) 
else ... 

NB:errDotNet機能ですそれはメッセージ "str"に警告し、私たちの場合は "errorTest"を表示しています。これはメッセージinsiですボックス。

答えて

0

あなたはそれがフルページ要求を必要とContentTemplate

<Triggers> 
    <asp:PostBackTrigger ControlID="lnkBtnphyCode" /> 
</Triggers> 

後に更新パネルの内側にトリガをかける必要があります。ページの読み込みに次の行を追加してください:

ScriptManager.GetCurrent(Me).RegisterPostBackControl(Me.YourControlID); 
+0

あなたは小さな説明を追加できますか? @ GalaxMan –

+0

最後に私はこの問題を解決しました。画像を含むリンクボタンのトリガを追加しても機能しないことが判明しました。これはaspボタンまたはリンクボタンだけでなければなりません –

関連する問題