用x-editable的时候,希望某些时候可以编辑,某些条件下不可编辑,有什么优雅的方式呢。

网上说的比如动态设置可编辑,太麻烦。

其实这里用到的 noEditFormatter属性,是wenzhixin的bootstrap table editable里的方法,不是x-editable.js里的方法。用下面代码即可实现。

$('#my_table_id').bootstrapTable({
noEditFormatter (value, row, index) {
consle.log(value)
if (value === 'noEdit') {
return 'No Edit'
}
return false
}
})

首先要引入

<script type="text/javascript" src="/static/js/bootstrap-editable.js"></script>
<script type="text/javascript" src="/static/js/bootstrap-table-editable.js"></script>

比如,isme和isadmin具有编辑权限,则在页面用这样

{
field: 'comment',
title: '说明',
halign: "center",
align: "center",
valign: "middle",
editable: {
noEditFormatter (value, row, index) {
// console.log(value)
var bools={{.RoleUpdate}}
if (!bools) {
return value
}
return false
},
type: 'text',
pk: 1,
url: '/v1/mathcad/putmathcalinput',
title: 'Enter MathComment'
},

效果:

noEditFormatter editable x-editable按需要动态设置可编辑_可编辑