0

我从数据库中检索用户列表并将其显示在 JSP 中。每个用户都有一个与之关联的状态(活动或非活动),并且可以根据单击激活或停用用户时的复选框选择来更新状态。我们如何使用 Google 闭包为每个用户动态呈现一个复选框?并且必须有一个父票框,当检查所有其他选票框时,还将检查所有其他选票框,并且所有用户都可以被激活或停用?

4

1 回答 1

2

通过“动态”,我假设您的意思是在 JavaScript 中?Google Closure 不在 JSP 中运行。

var users = [{ 'id': 'myId', 'activated': true }];
var usersLength = users.length;
var checkboxes = [];

for (var i = 0; i < usersLength; i++) {
    var user = users[i];

    var checkbox =
        goog.dom.createDom(
            goog.dom.TagName.INPUT, { 'type': 'checkbox', 'name': user.id });

    checkbox.checked = user.activated;

    checkboxes.push(checkbox);
}

var master = goog.dom.createDom(goog.dom.TagName.INPUT, { 'type': 'checkbox' });

goog.events.listen(
    master,
    goog.events.EventType.CLICK,
    function (event) {
        var isChecked = event.target.checked;
        goog.array.forEach(checkboxes, function(ck) { ck.checked = isChecked; });
    }
);
于 2013-10-11T16:58:27.417 回答