2017-12-08 10 views
0

DataTables을 사용하여 테이블을 구현했습니다. 하지만,jQuery 내부의 버튼 PHP 스크립트를 호출하는 Datatables?

$(document).ready(function() {  
    var table = $('#tbl_user').DataTable({ 
     "ajax": "data_user.php", 
     "bPaginate":true, 
     "bProcessing": true, 
     "pageLength": 10, 
     "columns": [ 
      { mData: 'name' } , 
      { mData: 'address' }, 
      { mData: 'city' }, 
      { mData: 'postalcode' }, 
      { mData: 'email' }, 
      { mData: 'supervisor' }, 
      { 
       mData: null,  
       "bSortable": false, 
       "mRender": function(data, type, full) { 
       return '<a class="btn btn-info btn-sm" href=update.php?' + 'name=foo' + '>' + 'Edit' + '</a>'; } 
      } 

     ], 
     "dom": 'Bfrtip', 
     "buttons": [ 
      'copy', 'csv', 'excel', 'pdf', 'print' 
     ] 
    }); 

}); 

하나의 문제가있다 :

Table

는 코드입니다. 사용자 "123"의 "수정"버튼을 클릭한다고 가정 해 봅시다. 버튼은 매개 변수로 "123"을 사용하여 PHP 스크립트 update.php를 호출합니다. 그렇게하는 방법? 나는 시도했다 :

return '<a class="btn btn-info btn-sm" href=update.php?' + 'name='+mData:name + '>' + 'Edit' + '</a>'; } 

잘 작동하지 않는다.

+1

를 처리하는 함수를 추가는'mData는 : name' 그 상황에서 유효한 구문처럼 보이지 않는다. 당신은 그 함수에서'data' 변수를 사용할 수 있습니다. 그 변수는 무엇입니까? – David

+0

그래,'mData : 이름'확실히 콘솔에 오류를 던지고있다. 당신은 아마도'mData.name'을 원할 것입니다. – DelightedD0D

+0

@ DelightedD0D mdata.name이 작동하지 않습니다. 아마도 블록에서 null로 선언 되었기 때문일까요? – anta40

답변

0

달성하고자하는 목표에 매우 가깝습니다.

마음 당신은 PARAM으로 새 페이지 update.php를 엽니 다 자바 스크립트 아약스

  • 사용 통해 두 가지 방법

    1. 이있다.

    모두 적용 가능한지 여부에 따라 두 옵션이 동일한 원칙을 따릅니다. 그러나이 예에서는 옵션 2를 계속 사용하려고합니다. 옵션 1도 원한다면 알려주십시오.

    업데이트 그림과 같이이 섹션 :

    return '<a class="btn btn-info btn-sm" onclick="'+callScript(123)+'">' + 'Edit' + '</a>'; } 
    

    다음이 onclick 이벤트

    function callScript(id){ 
    
        var url ="update.php?id="+id; 
        window.open(url,"_self") 
    
        } 
    
  • +0

    제 경우에는 이름을 검색하고 싶습니다. 그렇게하는 방법? – anta40