2014-03-03 2 views
0

Codeigniter와 Datatables를 함께 사용하고 있으며 사용자가 특정 데이터 행에 대해 '보기'를 클릭 할 때 모달 팝업을로드해야합니다. 여기 자바 스크립트 및 코드 서명이있는 모달 창 열기 및로드

function notes_modal(data) { 
    $.ajax({ 
     type: "POST", 
     url: "../load_notes_modal", 
    }).done(function (html) { 
     $("#selected_note").modal('show'); 
    }); 
} 

내가 전화 해요 "load_notes_modal"기능에 의해로드되는 내보기입니다 : 여기
<a href="#" onClick="javascript:notes_modal()">view</a> 

내 JS입니다 : 여기

내 onclick을 내 링크입니다 :

<div class="modal fade" id="selected_note" tabindex="-1" role="dialog" aria-labelledby="myModalLabel"> 
<div class="modal-dialog"> 
    <div class="modal-content"> 
     Random Content! 
     <div class="modal-header"> 
      <button type="button" class="close" data-dismiss="modal" aria-hidden="true">&times;</button> 
      <h4 class="modal-title" id="myModalLabel">View Location Note</h4> 
     </div> 
     <div class="modal-body"></div> 
    </div> 
</div> 

나는 어떤 오류도 나타나지 않는다. 단지 모달을 보여줄 운이 없다. 나는 JS에 익숙하지 않고 배우려고 노력하면서 완전히 잘못된 방향으로 나아갈 수 있습니다! 당신과 같이 성공 콜백에서 모달 트리거를 넣어하는 것이 좋습니다

+0

이 답변을 확인하십시오 - 도움이 되길 바랍니다. https://stackoverflow.com/questions/36158733/open-a-modal-in-codeigniter-that-loads-in-a-iframe-content-from-an-url- 그 – Varshaan

답변

0

:

HTML

<a href="#" class=".openModal">view</a> 

JS

function notes_modal() { 
    $.ajax({ 
     type: "POST", 
     url: "../load_notes_modal", 
     success: function (html) { 
      $("#selected_note").modal('show'); 
     }, 
     error: function() { 
      alert('ajax did not succeed'); 
     } 
    }); 
} 

function clickListener() { 
    $('.openModal').unbind(); 
    $('.openModal').click(function (e) { 
     e.preventDefault(); 
     notes_modal(); 
    }); 
} 

는 아래처럼 데이터 테이블 무언가가있다. 테이블이 그려 질 때마다 리스너가 호출되도록 fnDrawCallback()에서 함수를 호출하십시오. 위의 변경 사항에 유의하십시오.

var oTable = $('#myTable').dataTable({ 
    "fnDrawCallback": function (oSettings) { 
     notes_modal(); 
     clickListener(); 
    } 
}); 

새 업데이트 : dataTable 다시 그리기 작업.

+0

도와 줘서 고마워! 그러나 여전히 작동하지 않습니다 ... URL은보기를 호출하는 컨트롤러의 함수에 연결됩니다. 내가 거기에 뭔가를 놓친 건가? 내 JS Console을 확인했는데 올바른 링크입니다. – user2436953

+0

내 대답이 업데이트되었습니다. – Tomanow

+0

다음과 같은 오류가 발생합니다. Uncaught TypeError : 정의되지 않은 'ready'메서드를 호출 할 수 없습니다. – user2436953