2015-10-05 108 views
3

我是jQuery的新手,並使用jQuery Datatables我遇到了這個問題,我相信很簡單,但我無法弄清楚。處理程序.iframe.iframe2.iframe3工作正常,問題是.iframe4jQuery未定義值

我設法得到.iframe.iframe2.iframe3data[0]的價值,但我不能得到.iframe4以顯示其價值。現在,我只需要在.iframe4中顯示data[0]的值,但是我收到一個JS錯誤,指出該值未定義。以下是我的代碼:

<script type="text/javascript" language="javascript" class="init"> 
    $(document).ready(function() { 
     var table = $('#example').DataTable({ 
     // bPaginate: false, 
     "columnDefs": [ { 
      "targets": -1, 
      "data": null, 
      "defaultContent": "<input type='image' src='delete.png' id='button' >" 
     }, 
     { 
      "targets": -2, 
      "data": null, 
      "defaultContent": "<input type='image' src='edit.png' id='button' >" 
     }, 
     { 
      "targets": -3, 
      "data": null, 
      "defaultContent": "<input type ='image' src='edit.png' id='button' >" 
     }, 
     { 
      "targets": -4, 
      "data": null, 
      "defaultContent": " " 
     } 
     ], 
     "order": [[ 0, "desc" ]] 
    }); 
     $('#example tbody').ready(function(){ 
      var data = table.row($(this).closest('tr')).data(); 
      $(".iframe4").ready(function() 
      { 
       $(".iframe4").text(data[0]); 
      }); 
     }); 
     $('#example tbody').on('click', 'input', function(){ 
     var data = table.row($(this).closest('tr')).data(); 
     $(".iframe").colorbox({maxWidth:'95%', maxHeight:'95%', href:"session_edit.php?ID="+data[0]}); 
     $(".iframe3").colorbox({href:"delete.php?ID="+data[0]}); 
    }); 
     $('#example tbody').on('click', 'input', function(){ 
      var data = table.row($(this).closest('tr')).data(); 
      $(".iframe2").ready(function() 
      {window.location.replace("record_dt.php?ID="+data[0])}); 
     }); 
    }); 
</script> 
+0

什麼是'.iframe4'?什麼是未定義的 - 'data [0]'或'.iframe4'?你的數據是什麼樣的? – markpsmith

回答

0

您的代碼中存在拼寫錯誤。最有可能的,這是你想做的事,而不是什麼:

$('#example tbody').on('click', 'input', function() { 
    var data = table.row($(this).closest('tr')).data(); 
    $(".iframe4").ready(function() { 
     $(".iframe4").text(data[0]); 
    }); 
}); 

然而,它的壞的選擇附加在點擊事件的事件處理程序,而不先卸下它。我相信你可以使用下面的代碼。

$('#example tbody').on('click', 'input', function() { 
    var data = table.row($(this).closest('tr')).data(); 
    $(".iframe4").text(data[0]); 
}); 

它也適用於您的其他點擊處理程序。

+0

抱歉,但它不工作。我需要的只是顯示數據的值[0] – elstiv