如何使用 Knockout 创建弹出窗口?
How to create a pop up with Knockout?
我目前有一个 wijmo 网格,绑定完成后会出现带有复选框的列列表。我想将复选框添加到弹出窗口中,以便它仅在单击时可见。以下代码是我必须隐藏和取消隐藏已检查和未检查条件下的列的代码。
self.hideCols = function () {
var columns = $('#Grid').wijgrid("option", "columns"),
listContainer = $("#columnsList"),
checkBox, isChecked;
$.each(columns, function (index, col) {
isChecked = (col.visible)
? "checked = 'checked'"
: "";
checkBox = $("<label><input type='checkbox' " + isChecked + " />" + col.headerText + "</label>");
listContainer.append(checkBox);
checkBox.click(function (e) {
columns[index].visible = $(this).children("input")[0].checked;
$('#Grid').wijgrid("doRefresh");
})
我明白了。只需使用 HTML 创建一个弹出窗口并将列列表包含在
<div id="dialog" data-bind="wijdialog: {disabled: disabled, autoOpen: autoOpen, draggable: draggable, modal: modal, resizable: resizable }"
title="Uncheck to Hide Columns">
<table id="columnsList"></table>
</div>
我目前有一个 wijmo 网格,绑定完成后会出现带有复选框的列列表。我想将复选框添加到弹出窗口中,以便它仅在单击时可见。以下代码是我必须隐藏和取消隐藏已检查和未检查条件下的列的代码。
self.hideCols = function () {
var columns = $('#Grid').wijgrid("option", "columns"),
listContainer = $("#columnsList"),
checkBox, isChecked;
$.each(columns, function (index, col) {
isChecked = (col.visible)
? "checked = 'checked'"
: "";
checkBox = $("<label><input type='checkbox' " + isChecked + " />" + col.headerText + "</label>");
listContainer.append(checkBox);
checkBox.click(function (e) {
columns[index].visible = $(this).children("input")[0].checked;
$('#Grid').wijgrid("doRefresh");
})
我明白了。只需使用 HTML 创建一个弹出窗口并将列列表包含在
<div id="dialog" data-bind="wijdialog: {disabled: disabled, autoOpen: autoOpen, draggable: draggable, modal: modal, resizable: resizable }"
title="Uncheck to Hide Columns">
<table id="columnsList"></table>
</div>