如何在修改对象后更新html中的数据
How can i update data in html after modify the object?
我有这样一个函数,通过ID修改我现有的对象:
var updateUser = function () {
var id = $("#userId").val();
var user = findObjectById(id);
user.username = $('#username').val();
user.level = $('#level').val();
user.regstatus = $('#regstatus').val();
user.regdate = $('#regdate').val();
$(".table").show();
$("#newUser").show();
$("#userForm").hide();
$("#updateUser").hide();
};
如何用修改后的数据替换HTML中的当前数据?
这是我创建行的函数:
var buildRow = function (data) {
var html = '<tr id = ' + data.id + '>' +
'<td>' + data.username + '</td>' +
'<td>' + data.level + '</td>' +
'<td>' + data.regstatus + '</td>' +
'<td>' + data.regdate + '</td>' +
'<td>' +
'<button class="btn btn-info"value="Edit" onclick="userList.editUser(' + data.id + ')">Edit</button>' + ' ' +
'<button class="btn btn-danger" value="Delete" onclick="userList.deleteRow(' + data.id + ')">Delete</button>' + '</td>' +
'</tr>';
$("#users").append(html);
};
p。S我想在同一个地方更新,我的id应该是相同的
我稍微修改了一下原型jsFiddle,所以它包含了一个工作示例。
我需要修改一些部分来让它工作,例如更新我添加了一个函数的对象。
updateObjectById = function (id, obj){
for (var i = 0, l = userData.length; i < l; i++) {
if (userData[i].id == id) {
userData[i] = obj;
}
}
};
你应该能算出来,通过给定的jsFiddle
据我所知,你想在运行"updateUser"时更新表。在您的案例中,基本上有三种更新数据的方法。
- 重建整行
- 选择表格中的特定单元格并更改内容
- 使用双向数据绑定框架
在我的经验,最好的解决方案,以及如何f.ex。Backbone就是这样做的,它只是在数据改变时重新创建所有的HTML。双向数据绑定更强大,但在这种情况下似乎有些矫枉过正。
updateUser函数中:
var row = buildRow(user);
var $existingRow = $(id);
if ($existingRow.length) {
$existingRow.replaceWith(row);
} else {
$('#users').append(row);
}
现在,这当然需要更改您的"buildRow"函数,不是使其附加行,而是返回行。
相关文章:
- 在页面呈现之前更改HTML数据
- 当使用ajax并将html数据保存为对象时,收听浏览器返回按钮.好的或坏的
- 使用数据属性将HTML数据复制到另一个元素
- 使用jQuery在select选项上设置HTML数据属性
- 使用Javascript而不是html数据属性配置Parsley
- 访问HTML数据集
- 如何调用更改事件,例如在 HTML 数据列表上选择
- 检测 点击 在 ANDROID 中使用 HTML 数据查看
- 选择具有特定值的 html 数据属性
- jQuery的HTML数据效果
- 生成html时,在html数据属性中存储由.push()填充的数组
- Powerbuilder/Javascript HTML数据窗口SetItem日期时间失败
- html数据属性在firefox中使用javascript时没有按预期显示,但在chrome中显示正确
- 由于数据中的 & 符号,无法在 C# 上传递整个 html 数据
- 内联 HTML 数据角色<>脚本 jquery:Kendo Widget Initialization
- 如何将带有普通对象集合的 Js 数组对象传递给 ajax post'html' 数据类型中的控制器
- 使用 PrototypeJS 1.6 访问锚点上的 HTML 数据属性
- 如何更改 HTML 数据列表输入上显示的图标?隐藏是可能的,但我可以将其更改为其他一些图标,例如向下箭头
- Android - 如何在运行时生成的HTML数据中加载外部javascript文件
- 从 html 数据设置 jquery 延迟