在SQLFORM.grid表头中添加select all复选框
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在SQLFORM.grid表头中添加select all复选框相关的知识,希望对你有一定的参考价值。
我发现了Massimo Di Pierro发布的google群组中的代码:
<button onclick="jQuery('input[type=checkbox]').each(function(k){jQuery(this).attr('checked', 'checked');});">select all</button>
我创建这个问题是因为基于我在此发布的上一个问题,如果我从学生主列表中检索到达到500+或1000+的记录并且我创建的表没有全部选择按钮怎么办?很难点击并点击并点击等等......有谁知道我会把那些代码放在哪里?因此,如果表上有一个全选复选框,则可以轻松检索记录。
答案
同
form = SQLFORM.smartgrid(..,selectable= lambda ids: your_function_name_to_trigger(ids),...),
将此添加到您的控制器功能:
if form.elements('th'):
form.elements('th')[0].append(SPAN('All', BR(), INPUT(_type='checkbox',
_onclick="jQuery('input[type=checkbox]').each(function(k{jQuery(this)
.attr('checked', 'checked'));});")))
这将在单击全部按钮时“检查”表单中的所有复选框。
另一答案
将上面的代码放在视图中您希望按钮可见的任何位置。它将在页面上找到所有复选框。
另一答案
我将Serge回答与Jquery Checkbox check all解决方案结合起来,效果很好:
if form.elements('th'):
form.elements('th')[0].append(SPAN('All', BR(), INPUT(_type='checkbox',
_onclick="jQuery('input:checkbox').not(this).prop('checked', this.checked);"
)))
以上是关于在SQLFORM.grid表头中添加select all复选框的主要内容,如果未能解决你的问题,请参考以下文章
如何在element UI lt;el-table>表头中添加 select选择器或其他组件?