如何在web2py的SQLFORM.grid组建中自定义下拉菜单

web2py的SQLFORM.grid构造时,可以在links增加button构建行操作按钮:手册是这样写的:

links is used to display new columns which can be links to other pages. The links argument must be a list of dict(header='name', body=lambda row: A(...))where header is the header of the new column and body is a function that takes a row and returns a value. In the example, the value is a A(...) helper.

但是按钮太多占空间,按钮太多无法摆放:

要是编程下拉菜单多好,我们直接用web2py的XML直接输出html能力来构造,改成:

dict(header='name', body=lambda row: XML(...)) 格式,看示例

links=[dict(header='操作', body=lambda row:
XML('<a class="nav-link dropdown-toggle" style="color:#007bff;font-weight:bold" data-toggle="dropdown">操作菜单</a> '
    '<div class="dropdown-menu dropdown-menu-right">'
    '<a class="dropdown-item" href="/employee/edit/'+ str(row.id)+'">变更</a>'
    '<a class="dropdown-item" href="/employee/delete/'+ str(row.id) +'">删除</a>'
    '<a class="dropdown-item" target="_blank" href="/employee/view/' + str(row.id) +'">查看</a></div>'
             ))],

看看效果:

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值