我有一个 GridView
(Yii2),其中一列是 bool 类型的数据。我希望能够切换该值并将其保存在我的数据库中。
我需要一个回调,但我没有看到 CheckboxColumn
有回调。我怎样才能实现这个目标?
最佳答案
不要看得太远。只需使用 checkboxOptions
-property您的列设置中添加特定的 class
到所有复选框。然后您可以使用 jQuery 事件来监听更改并报告它们:
$('.checkbox-column').change(function(e) {
var checked = $(this).is(':checked');
$.ajax('route/target', {data: {id: $(this).closest('tr').data('key'), checked: checked}});
});
Yii 的 GridView
通常呈现 data-key
- 每行的属性(在 <tr>
上),可用于标识要更新的实际记录。
替代方案:$('input:checkbox', $('#w0')).change()
假设您不想要额外的类(class)并且 GridView
也可以工作是您的第一个小部件。
关于javascript - Yii2 的 GridView CheckboxColumn 的回调,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30647315/