我正在使用骨干网和后格网。
我想使一些背网格单元格不可编辑并突出显示它们。
我正在寻找这些单元格上的简单 css 属性。
但不幸的是,backgrid 不会对不可编辑的单元格施加任何特定的类。
这是从backgrid网站呈现的一个backgrid行本身:http://backgridjs.com/我们知道id字段在这里是不可编辑的:
<tr>
<td class="integer-cell">1</td>
<td class="string-cell">Afghanistan</td>
<td class="integer-cell">25,500,100</td>
<td class="number-cell">0.36</td>
<td class="date-cell">2013-01-01</td>
<td class="uri-cell"><a tabindex="-1" href="http://en.wikipedia.org/wiki/Afghanistan" title="http://en.wikipedia.org/wiki/Afghanistan" target="_blank">http://en.wikipedia.org/wiki/Afghanistan</a></td>
</tr>
现在我如何实现相同的目标?
那些你不想编辑的单元格,向它们添加一些类,然后转到backgrid的源代码.js并找到启用编辑模式的函数,我不知道确切的函数处理它,可能是
render: function () {
enterEditMode: function () {
然后检查该单元格的类名,例如
$("#mydiv").hasClass("dont_edit"); OR this.hasClass("dont_edit");
如果是这样,那么只需"返回"否则允许编辑。你必须通过反复试验来解决它,直到有人帮助你处理确切的代码。在那之前,最好开始帮助自己。
Backgrid.Cell#initialize 具有以下代码
if (Backgrid.callByNeed(column.editable(), column, model)) $el.addClass("editable");
这意味着所有可编辑单元格都有"可编辑"的 css 类。 而所有不可编辑的单元格都没有这个类。
因此,通过应用如下所示的CSS选择器,我能够根据需要设置不可编辑单元格的样式:
backgrid td.renderable:not(.editable) {
background-color: gray
}