【问题标题】:Make checkboxes checked on page load在页面加载时选中复选框
【发布时间】:2020-08-27 10:00:09
【问题描述】:

尝试在页面加载时加载复选框的选中状态。

例如,之前选中了两个复选框,并将数据保存到本地存储。再次加载页面时,我想检索数据(已经弄清楚这部分),然后将复选框的状态设置为选中(尚未弄清楚)。

我正在使用 AgReactGrid。是否有 columnDefs 的某些属性,我可以使用 cellRenderer 来执行此操作或其他方式?

网格:

    <AgGridReact 
    rowSelection="multiple"
    onGridReady={params => this.gridApi = params.api}
    enableSorting={true}
    enableFilter={true}
    pagination={true}
    columnDefs={this.state.columnDefs}
    rowData={this.state.rowData}>
    </AgGridReact>

状态:

 this.state = {
            columnDefs: [
                { headerName: 'Checkbox', field: 'check', checkboxSelection: true},
                { headerName: 'Name', field: 'name' }
            ]

更新选择:

updateSelection = e => {
        const selectedNodes = this.gridApi.getSelectedNodes();
        const selectedData = selectedNodes.map(node => node.data);
        const selectedDataStringPresentation = selectedData.map(node => node.name).join(',');
        localStorage.setItem('previouslyChecked', selectedDataStringPresentation );
    }

【问题讨论】:

  • 提供代码有助于快速解决问题。
  • 如果不是document.querySelector("input[type=checkbox]").checked = window.localStorage.getItem("checkboxValue");那么简单,请附上与问题相关的代码。

标签: javascript reactjs


【解决方案1】:

在 componentDidMount() 上从 localStorage 中获取检查状态,并仅在此处设置复选框的状态,以便在设置状态后立即呈现并反映。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-03-28
    • 1970-01-01
    • 2011-10-02
    • 2021-08-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多