Установите флажок с помощью Google Closure
Я получаю список пользователей из базы данных и отображаю его в JSP. Каждый пользователь имеет статус (активный или неактивный), связанный с ним, и статус может быть обновлен на основе выбора флажка при нажатии либо активировать, либо деактивировать пользователя. Как мы отображаем флажок для каждого пользователя динамически, используя закрытие Google? И должен быть родительский флажок, который, когда отмечен, все другие флажки также будут проверены, и все пользователи могут быть или активированы или деактивированы?
1 ответ
Решение
Под "динамически" я предполагаю, что вы имеете в виду в 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; });
}
);