2012-01-27 3 views
0

ASP 모달 팝업 익스텐더를 사용하여 일부 코드를 상속 받았으며 어떤 이유로 지금은 작동을 멈추기로 결정했습니다. 내가 여기서 아무것도 놓치고 있니? 나는 AJAX/ASP.Net에 너무 능숙하지 않아서 지금 당장 무엇이 잘못되고 있는지 진단하려고 애쓴다. 그래서 먼저모달 팝업 익스텐더가 팝업을 표시하지 않습니다.

나는이 때문에 경고의 호출되고 있는지 알고 모달

function ShowModalRemoveEvent(ID, EventID, InstructorID, InstructorName) 
     { 
     alert("Hi"); 
     var modal = $find('ModalPopupExtender1'); 
     modal.show(); 
     document.getElementById("txtID").value = ID; 
     document.getElementById("txtEventID").value = EventID; 
     document.getElementById("txtInstructorID").value = InstructorID; 
     document.getElementById("txtInstructorName").value = InstructorName; 
     } 

를 표시하는 자바 스크립트 방법. 그래서 나는 prpblem이 ModalPopupExtender1 또는 modal.show() 라인을 찾는 중이라고 가정합니다. 여기

내 모달 팝업 익스텐더

<asp:UpdatePanel ID="UpdatePanel4" runat="server" UpdateMode="Conditional"> 
     <ContentTemplate> 
     <asp:Panel ID="Panel4" runat="server" Style="display: none" CssClass="ModalBackground"> 
      <table style="width: 100%" border="0" cellpadding="0" cellspacing="0"> 
       <tr> 
        <td width="7%" class="cellAlertHeader"> 
        <img src="../../../images/Ops/window_delete.png" style="width: 18px; height: 18px" alt=""/> 
        </td> 
        <td width="93%" class="cellAlertHeader"> 
        <b>Cancel Instructor Event</b> 
        </td> 
       </tr> 
      </table> 
      <table width="100%"> 
       <tr> 
        <td width="5%"> 
        &nbsp;<td width="95%"> 
         &nbsp; 
         <asp:TextBox ID="txtID" Style="display: none" runat="server" CssClass="TextboxTitle"></asp:TextBox> 
         <asp:TextBox ID="txtEventID" Style="display: none" runat="server" CssClass="TextboxTitle"></asp:TextBox> 
        </td> 
       </tr> 
       <tr> 
        <td width="5%"> 
        &nbsp; 
        </td> 
        <td width="95%"> 
        <asp:TextBox ID="txtInstructorID" Style="display: none" runat="server" BorderStyle="None" 
         CssClass="TextboxTitle"></asp:TextBox> 
        <asp:TextBox ID="txtInstructorName" Style="font-size: 12px" runat="server" BorderStyle="None" 
         CssClass="TextboxTitle" BorderWidth="0"></asp:TextBox> 
        </td> 
       </tr> 
       <tr> 
        <td width="5%"> 
        &nbsp; 
        </td> 
        <td width="95%"> 
        &nbsp; 
        </td> 
       </tr> 
       <tr> 
        <td width="5%"> 
        &nbsp; 
        </td> 
        <td width="95%"> 
        <asp:Label ID="Label2" runat="server" Text="Are you sure you want to remove this Event?" 
         CssClass="TextboxTitle"></asp:Label> 
        </td> 
       </tr> 
       <tr> 
        <td width="5%"> 
        &nbsp; 
        </td> 
        <td width="95%"> 
        &nbsp; 
        </td> 
       </tr> 
       <tr> 
        <td width="5%"> 
        &nbsp; 
        </td> 
        <td width="95%"> 
        <asp:Button ID="ButtonConfirmRemove" runat="server" Text="Confirm" CssClass="buttonshort" /> 
        <asp:Button ID="ButtonCancel" runat="server" Text="Cancel" CssClass="buttonshort" /> 
        </td> 
       </tr> 
       <tr> 
        <td width="5%"> 
        &nbsp; 
        </td> 
        <td width="95%"> 
        &nbsp; 
        </td> 
       </tr> 
      </table> 
     </asp:Panel> 
     <asp:Button runat="server" ID="dummyButton" Style="display: none" /> 
     <cc1:ModalPopupExtender ID="ModalPopupExtender1" 
           runat="server" 
           PopupControlID="Panel4" 
           TargetControlID="dummyButton" 
           BackgroundCssClass="ModalBGOpacity" 
           CancelControlID="ButtonCancel" 
           OnCancelScript="HideModalPopup()"> 
     </cc1:ModalPopupExtender> 
     </ContentTemplate> 
     <Triggers> 
     <asp:AsyncPostBackTrigger ControlID="dummyButton" /> 
     </Triggers> 
    </asp:UpdatePanel> 
+0

아마도 jQuery/prototype과 같은 라이브러리를 추가하고 $ 기호는 작업 방식을 변경합니다. – Aristos

+0

@Aristos 좋은 생각, 마스터 페이지를 확인했는데 모달 팝업을위한 javascript 파일 이외의 라이브러리는 포함되어 있지 않습니다. – Purplegoldfish

+1

두 번째 문제는 HTML 코드에서 모달 ID가 렌더링되는 방식을 확인하는 것입니다. ModalPopupExtender1 또는 다른 방법이며 렌더링 된 ID를 얻으려면 ModalPopupExtender1.CliendID를 추가해야합니다. 마스터 페이지 클라이언트에이 코드를 추가하면이 ID가 변경됩니다. – Aristos

답변

2

처럼, 컨트롤의 렌더링 된 ID를 얻는 시도에 대한 코드입니다.

var modal = $find('<%=ModalPopupExtender1.CliendID%>'); 
관련 문제