2017-04-22 50 views
1

我從數據庫中使用PHP檢索數據:如何使用js從特定鏈接獲取價值?

<?php 
while($trackResultRow = mysqli_fetch_assoc($trackResult)){?> 

    <a onclick="remove()"><span class="glyphicon glyphicon-thumbs-down pull-right"></span></a> 
    <li> 
    <a href="<?php echo $trackResultRow['track_path']?>"> 
     <span id="username"><?php echo $trackResultRow['username']?></span> - 
     <span id="track"><?php echo $trackResultRow['track_name']?></span> 
    </a> 
    </li> 
    <hr> 
<?php 
} 
?> 

現在,當我點擊鏈接就可以了應該採取的價值和它的PSS到jQuery函數(阿賈克斯)從表中刪除記錄而無需刷新頁面。

function remove() 
{ 
    var username = document.getElementById("username").value; 
    var track = document.getElementById("track").value; 
    //window.some_variable = '<?=$_GET[user]?>'; 
    if(username && track) 
    { 
    $.ajax 
    ({ 
     type:'post', 
     url: 'delete_proc_admin.php', 
     data: 
     { 
     user_name:username, 
     user_track:track 
     }, 
     success: function (response) 
     { 
     return alert (username +" "+ track); 

     } 
    }); 
    } 

    return false; 
} 

但是JQuery函數不起作用。

我想這是因爲相同的ID,但我現在不怎麼修復我的代碼。 有人可以幫我解決這個問題嗎?

+0

你的ID不相似,它們是相同的,ID必須是唯一的https://developer.mozilla.org/en/d ocs/Web/HTML/Global_attributes /編號 – Xotic750

+0

你能提供一個解決方案嗎? –

+0

刪除自動生成代碼中的ID並使用傳遞給remove函數的'event'參數或使用'this'來獲取目標元素。 – Xotic750

回答

0
  1. 修復無效的HTML
  2. 使用jQuery的鏈接過於
  3. 使用數據屬性

$(function() { // page load 
 
    $(".rem").on("click", function(e) { // the remove link 
 
    e.preventDefault(); // cancel link 
 
    var $link = $(this), // save for later 
 
     username = $(this).data("username"), 
 
     track = $(this).data("track"); 
 
    $.ajax({ 
 
     type: 'post', 
 
     url: 'delete_proc_admin.php', 
 
     data: { 
 
     user_name: username, 
 
     user_track: track 
 
     }, 
 
     success: function(response) { 
 
     $link.closest('li').remove(); 
 

 
     } 
 
    }); 
 
    }); 
 
});
<li> 
 
    <a href="#" class="rem" 
 
    data-userid="<?php echo $trackResultRow['username']?>" 
 
    data-track="<?php echo $trackResultRow['track_name']?>"> 
 
    <span class="glyphicon glyphicon-thumbs-down pull-right"></span> 
 
    </a> 
 
    <a href="<?php echo $trackResultRow['track_path']?>"> 
 
    <span><?php echo $trackResultRow['username']?></span> - 
 
    <span><?php echo $trackResultRow['track_name']?></span> 
 
    </a> 
 
    <hr/> 
 
</li>

0

通行證鏈接本身的功能

<a onclick="remove(this)"></a> 

function remove(link){ 
    var username = link.getElementById("username"); 
} 
0

你可以通過你的用戶名和跟蹤右轉入刪除功能,並創建一個動態的唯一的ID使用的用戶名來選擇容器和跟蹤

<div id="<?php echo $trackResultRow['username'] . $trackResultRow['track_name'] ?>"> 
    <a onclick="remove('<?php echo $trackResultRow['username']?>', 
         '<?php echo $trackResultRow['track_name']?>')"> 

然後在你刪除功能

function remove(username, track) 
{ 
    //window.some_variable = '<?=$_GET[user]?>'; 
    if(username && track) 
    { 
    $.ajax 
    ({ 
     type:'post', 
     url: 'delete_proc_admin.php', 
     data: 
     { 
     user_name:username, 
     user_track:track 
     }, 
     success: function (response) 
     { 
     $('#'+username+track).remove(); 
     return alert (username +" "+ track); 

     } 
    }); 
    } 

    return false; 
}