2016-08-25 10 views
0

をクリックして入手できますか私は、次のAJAX呼び出しがあります。mRenderでjQueryのDataTableのmRenderボタンどのように私はボタンが

$('#stlmtddel').click(function(event) { 
     var customerid = "<%=customerid%>"; 
     var appointofcaid = "<%=appointofcaid%>"; 
     var kindcontrolid = "<%=kindcontrolid%>"; 
     var auditorid = "<%=auditorid%>"; 
     var instype = "view"; 

     $.ajax({ 
       type: 'GET', 
       url: 'crudsettlement.jsp', 
       data: { 
        Wcustomerid: customerid, 
        Wappointofcaid: appointofcaid, 
        Wkindcontrolid: kindcontrolid, 
        Wauditorid: auditorid, 
        Winstype: instype 
       }, 
       async: false, 
       dataType: 'json', 
       success: function(json) { 

        $('#settlementsd').DataTable({ 
         destroy: true, 
         "stateSave": true, 
         "displayLength": 10, 
         "lengthMenu": [ 
          [10, 25, 50, 100, -1], 
          [10, 25, 50, 100, "όλα"] 
         ], 
         "pagingType": "full_numbers", 
         "language": { 
          "emptyTable": "Δεν βρέθηκαν δεδομένα", 
          "thousands": ".", 
          "lengthMenu": "Εμφάνιση _MENU_ εγγραφών ανά σελίδα", 
          "zeroRecords": "Δεν βρέθηκαν εγγραφές - ", 
          "info": "Εμφανίζονται οι εγγραφές _START_ έως _END_ από σύνολο _TOTAL_", 
          "infoEmpty": "Εμφανίζονται οι εγγραφές 0 έως 0 από σύνολο 0", 
          "infoFiltered": "(Εφαρμόστηκε φίλτρο σε σύνολο _MAX_ εγγραφών)", 
          "search": "Αναζήτηση:", 
          "paginate": { 
           "first": "Αρχή", 
           "previous": "Προηγούμενη", 
           "next": "Επόμενη", 
           "last": "Τέλος" 
          } 
         }, 
         "aaData": json, 
         "aoColumns": [{ 
          "mData": "auditoridid" 
         }, { 
          "mData": "auditoridname" 
         }, { 
          "mData": "sdpaymentnet" 
         }, { 
          "mData": "sdpaymenttax" 
         }, { 
          "mData": "sdpayment" 
         }, { 
          "bSortable": false, 
          "mRender": function(data, type, row) { 
           return '<input type="hidden" name="Wauditordid" class="Cauditordid" value="'+row.auditoridid+'" disabled><button type="submit" id="stlmtddel" class="btn btn-danger" formnovalidate><span class="glyphicon glyphicon-minus"></span>'; 
          } 
         }, ] 
        }); 
        alert(json.msg); 
       } 

      }); 
    }); 

を私はボタンwihtのID =「stlmtddel」を作成し、私は、クリックイベントを取得したいです。私は以下を試しました: $('#stlmtddel').click(function(event) { }

ただし、すべての行で機能していません。 たとえば、テーブルに3つの行があり、その行の1つをクリックして削除しようとすると、この正常に動作します。 その後、テーブルには2行があり、クリックしてその行の1つを削除しようとすると、クリックイベントは機能しませんでした。

答えて

1

HTML仕様書IDmust be uniqueによる。同じidを持つ3つのボタンがあるので、$("#stlmtddel")は最初のオカレンスと一致するだけなので、クリックイベントは最初のボタンでのみ機能します。

id stlmtddelの代わりにstlmtddelを使用してください。idはWebページ内で一意である必要があります。その後

$('#settlementsd').DataTable({ 
    ... 
    "aoColumns": [ 
     ... 
     { 
      "bSortable": false, 
      "mRender": function(data, type, row) { 
        return '<input type="hidden" name="Wauditordid" class="Cauditordid" value="'+row.auditoridid+'" disabled><button type="submit" class="stlmtddel btn btn-danger" formnovalidate><span class="glyphicon glyphicon-minus"></span>'; 
       } 
      } 
    ] 
}); 

あなたは#settlementsd

$('#settlementsd').on('click', '.stlmtddel', function() { 
    // Button click logic goes here 
}); 
上のイベントをクリックして聞くことによって、ボタンのクリックを聞くことができます
関連する問題