2013-10-25 1 views
0

사이트가 jquery를 1.10.2로 업그레이드하고 있으며 이전에 colorbox를 사용했기 때문에 몇 가지 문제가 있습니다. 주로보고있는 문제는 사용자가 부서를로드하려는 의도로 colorbox를 열기 위해 링크를 클릭하면 처음에는 제대로 작동하지만 두 번째로는 colorbox에 흰색 페이지 만 표시된다는 것입니다. 나는 디버깅을 해왔지만 처음 실행될 때와 두 번째 실행시 설정의 차이를 볼 수 없다. 페이지가 다시로드되면 처음에는 정상적으로 창이 열리고 두 번째로 실패합니다. 이 여는있는 부문은 여기ColorBox의 분할이 JS 1.10.2로 두 번로드되지 않습니다.

$('#btn_Detail').click(function (e) { 
     $('#div_Detail input:text').val(''); 
     $('#div_Detail input:radio:checked').removeAttr('checked'); 
     $('#div_Detail select').val(''); 
     $('#div_Detail textarea').val(''); 

     if ($('#hid_ID').val() != '') { 
      $.colorbox({ href: '#div_Detail', width: '650px', height: '300px', inline: true }); 
     } 
    } 

: 그리고 여기

은 colorbox 창을 호출하는 버튼입니다

<div id="div_Detail"> 
    <div> 
    <ul> 
     <li> 
      <label>Type<span class="req">*</span></label> 
      <asp:DropDownList ID="ddl_Detail_Type" runat="server" /> 
     </li> 
     <li> 
      <label>ID<span class="req">*</span><em>(Make,Model,Serial #, Vin #,Building #)</em></label> 
      <asp:TextBox ID="txt_Detail_Id" runat="server" style="overflow:visible;" /> 
     </li> 
     <li> 
      <label>Description:<span class="req">*</span></label> 
      <asp:TextBox TextMode="MultiLine" Rows="2" ID="txt_Detail_Desc" Width="300px" runat="server" /> 
     </li> 
     <li> 
      <label>Damage:<span class="req">*</span></label> 
      <asp:DropDownList ID="ddlDamage" runat="server"></asp:DropDownList> 
     </li> 
     <li> 
      <label>Owning Property</label> 
      <input type="text" id="txt_OwnMaterial" name="txt_OwnMaterial" style="overflow:visible;" /> 
      <a id="a_OwnMaterial" href="#"><img alt="" src="/images/TinyButton.gif" /></a> 
      <input type="hidden" id="hid_ActOwnMaterialID" name="txt_ActOwnMaterial" /> 
     </li> 
     <li> 
      <label>Owned By<span class="req">*</span></label> 
      <asp:DropDownList ID="ddl_Detail_OwnBy" runat="server" /> 
     </li> 
    </ul> 
    <asp:Button ID="btn_AddUpdate" runat="server" CssClass="yes_btn cancel" Text="Add" /> 
    </div> 

만들 수있는 colorbox 스크립트 자체에 몇 가지 추가 비틀기가 있었다 그것은 jquery 1.10.2와 호환된다. 특별히 스크립트 내의 $ .event.trigger() 줄을 몇 가지 다른 것들과 함께 변경합니다. 누군가 문제 해결을 위해 문제를 해결할 수있는 방법에 대한 통찰력을 주시겠습니까?

colorbox가 처음 실행될 때 페이지에서 나누기를 제거하고 있기 때문에 사용자가 두 번째로 더 이상 존재하지 않을 때 색상 상자가 그것을 얻는다는 가능한 이론이 있습니다. 그것은 메모리에서 몇 가지, 거기에서 검색 할 수 있습니까?

답변

0

몇 가지 도움을 주면 답이 잘못되어 ColorBox 스크립트 내부의 트리거 기능과 관련이 있습니다. 이전 ColorBox 스크립트에서는 event.trigger 호출이 더 이상 사용되지 않으므로 트리거가 필요한 항목을 구체적으로 호출하도록 스크립트를 변경해야했습니다. 이 문제가 해결 될 수 있도록 colorbox.js 파일의 트리거 함수에 다음 줄을 추가했습니다.

$ ('[id * = cbox]', $ div) .add ($) div) .trigger (이벤트);