javascript — X-editable: как получить идентификатор каждой строки, чтобы я мог обновлять отдельные элементы?

Вот соответствующие части моего кода. Я использую запрос MySQL для извлечения всей информации и отображения ее в таблице. В настоящее время таблица отображает информацию обо всех пользователях, которая доступна для редактирования. Я хочу сделать так, чтобы он отображал только userID, username, …, и, кроме того, есть кнопка, которую я могу нажать, которая приведет меня на страницу, где я могу обновить всю эту информацию отдельных пользователей. Каждая строка будет иметь кнопку, которую можно нажать

<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>

Каждая строка будет иметь эту кнопку. Я хочу иметь возможность щелкнуть по нему и перенести меня на другую страницу, где он перечисляет информацию об отдельных пользователях, чтобы ее можно было обновлять. Я не уверен, как это сделать. Как я могу передать userID строки пользователя, которого я хочу обновить?

<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();

1

Решение

Самый короткий путь — сохранить идентификатор текущей записи в идентификаторе вашего тега. В вашем php-коде при выводе таблицы: echo "<a href='...' id='$id' .....>" И в твоем JQuery Вы можете получить это по id = $(this).attr("id") в обработчике onClick.

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]