如何在jQUery中使用数据属性从表中更新数据

How to update a data from a table using data-atributes in jQUery

本文关键字:更新 数据 数据属性 jQUery      更新时间:2023-09-26

我在html中有这个表,我需要使用data-userid更新一个用户,我使我的函数到这个,但这个函数没有改变任何网页

这里,我有data-userid的html表代码:
 <table id="tblList">
        <tbody id="someTest">
          <tr data-userid="801992084067"></tr>
          <tr data-userid="451207954179"></tr>
          <tr data-userid="310896831399"></tr>
          <tr data-userid="863939754980"></tr>
          <tr data-userid="1123542226482"></tr>
        </tbody>
      </table>

这里是更新函数。

function updateUser(userId, user) {
    var foundUser = findUser(userId);

    foundUser.username = user.username;
    foundUser.level = user.level;
    foundUser.registrationStatus = user.registrationStatus;
    foundUser.registrationDate = user.registrationDate;

    for(var i = 1; i<userId.length; i++){
        $("#someTest tr[data-userid = 'userid " + userId[i] + "']").each(function () {
            // if (rowId === userId) {
                var table = $('#tblList');
                var row = "<tr data-userid=" + foundUser.id + ">"
                    + " <td>"
                    + "     <img src='resources/img/edit.png' alt='Edit' class='btnEdit'/>"
                    + "     <img src='resources/img/delete.png' alt='deleteUser' class='btnDelete'/>"
                    + "</td>"
                    + " <td>" + foundUser.username + "</td>"
                    + " <td>" + foundUser.level + "</td>"
                    + " <td>" + foundUser.registrationStatus + "</td>"
                    + " <td>" + foundUser.registrationDate + "</td>"
                    + "</tr>";
                table.append(row);
            // }
        });
    }
    hidePopup();
}

我的问题如下:在updateUser函数中做什么,因为当我更改用户时,要在浏览器中看到该更改?

try this

function updateUser(userId, user) {
        var foundUser = findUser(userId);

        foundUser.username = user.username;
        foundUser.level = user.level;
        foundUser.registrationStatus = user.registrationStatus;
        foundUser.registrationDate = user.registrationDate;
        var row = " <td>"
                        + "     <img src='resources/img/edit.png' alt='Edit' class='btnEdit'/>"
                        + "     <img src='resources/img/delete.png' alt='deleteUser' class='btnDelete'/>"
                        + "</td>"
                        + " <td>" + foundUser.username + "</td>"
                        + " <td>" + foundUser.level + "</td>"
                        + " <td>" + foundUser.registrationStatus + "</td>"
                        + " <td>" + foundUser.registrationDate + "</td>";

        $("#someTest tr[data-userid = '" + userId + "']").html(row)
        hidePopup();
    }