2016-12-15 177 views
-1

我在同一個文件夾中有「admin_panel.php」和「admin_menu.js」文件:admin。

/*admin_menu.js*/ 
 
function get_data(catId) { 
 
    $("#category_select").live("click", function() { 
 
     $.get("admin_panel.php?title=category", { 
 
     'catid': catId 
 
     }); 
 
    });
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<!--admin_panel.php?title=category--> 
 
<?php if(isset($_GET[ 'catid'])) $catid=$_GET[ 'catid']; ?> 
 
<table border="0" align="center" cellpadding="5px" class="table table-bordered"> 
 
    <tr align="center"> 
 
    <th>sr. no.</th> 
 
    <th>category id</th> 
 
    <th>category</th> 
 
    <th>main category id</th> 
 
    <th>select</th> 
 
    </tr> 
 
    <?php $query="select * from category" ; $q=m ysqli_query($con, $query); $index=1; while($result=m ysqli_fetch_assoc($q)) { ?> 
 
    <tr> 
 
    <td align="center"> 
 
     <?=$index?> 
 
    </td> 
 
    <td align="center"> 
 
     <?=$result[ 'catid']?> 
 
    </td> 
 
    <td> 
 
     <?=$result[ 'category']?> 
 
    </td> 
 
    <td align="center"> 
 
     <?=$result[ 'main_catid']?> 
 
    </td> 
 
    <td><span id="category_select" onclick="get_data(<?=$result['catid']?>)">select</span> 
 
    </td> 
 
    </tr> 
 
    <?php $index++; } ?> 
 
</table>

當我點擊跨度我不'admin_panel.php?標題=類別頁面獲得 'CATID'。當我刪除jquery'live'功能問題仍然存在。請給我一個解決方案

+3

看看你的控制檯。您可能會收到關於'.live'的錯誤。如果是這樣,你需要使用'.on'。 ---'.live'已被棄用,並從新版本的jQuery中刪除。 –

+0

從jQuery 1.7開始,不推薦使用.live()方法。使用.on()附加事件處理程序。老版本的jQuery用戶應優先使用.delegate(),而不要使用.live()。 – iHasCodeForU

+0

但我測試'.live',它工作。 – Sudip977

回答

0

請使用

function get_data(catId){ 
$("body").on("click","#category_select", function() { 
    $.get("admin_panel.php?title=category", { 'catid': catId }); 
}); 
+0

仍然沒有收到 – Sudip977

+0

您是否在控制檯上發現任何錯誤。 – Abhishek

+0

沒有錯誤。它被測試。 – Sudip977

1

,如果我正確地讀這篇文章,當你按下跨度你只定義的onclick監聽器,而不是觸發它。你應該改變方法是:

function get_data(catId){ 
    $.get("admin_panel.php?title=category", { 'catid': catId }); 
};