这是我的代码的相关部分。我正在使用 mysql 查询来获取所有信息并将其显示在表中。目前该表显示所有用户的信息,可编辑。我想让它只显示用户 ID、用户名……,然后有一个按钮,我可以单击该按钮将带我到一个页面,在那里我可以更新所有个人用户信息。每行都会有一个可以点击的按钮
<td data-th="ID">'.$fetch['userID'].'</td>
<td class="userInfo" data-th="Username"id="'.$fetch['userID'].'"key="username">'.$fetch['username'].'</td>
<td class="userInfo" data-th="End" id="'.$fetch['userID'].'" key="end_date">'.$fetch['end_date'].'</td>
每一行都有这个按钮。我希望能够单击它并让它带我到另一个页面,其中列出了各个用户的信息,以便可以对其进行更新。我不确定如何完成这项工作。如何传递要更新的用户所在行的用户 ID?
<td> <a href="updatemember.php" class="btn btn-secondary btn-lg" role="button">Link</a> </td>
JavaScript
jQuery(document).ready(function() {
$.fn.editable.defaults.mode = 'popup';
$('.userInfo').editable();
$(document).on('click','.editable-submit',function() {
var col = $(this).closest('.editable-container').prev().attr('key');
var x = $(this).closest('.editable-container').prev().attr('id');
var y = $('.input-sm').val();
var z = $(this).closest('.editable-container').prev().text(y);
$.ajax( {
url: "process.php?id="+x+"&data="+y+'&col='+col,
type: 'GET',
success: function(s){
if(s == 'status') {
$(z).html(y);
}
if(s == 'error') {
alert('Error.');
}
},
error: function(e){
alert('Error.');
}
});
});
});
更新每一行的代码
$col=$_GET['col'];
$id = $_GET['id'];
$data = $_GET['data'];
$pbr = $conn->prepare("UPDATE `loginInfo` l
INNER JOIN `memberInfo` AS m
ON l.userID = m.UserID
SET $col = '$data'
WHERE m.userID = ?");
$pbr->bind_param("i", $id);
$pbr->execute();
最佳答案
最简单的方法是将当前记录的 ID 存储在您的标签 ID 中。在输出表时的 php 代码中:echo "<a href='...' id='$id' .....>"
在您的 jQuery 中,您可以通过 id = $(this).attr("id")
获取它在 onClick 处理程序中。
关于javascript - X-editable:如何获取每一行的 id 以便我可以更新单个成员?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36389831/