jQuery MiniUI

标题: 如何指定DataGrid单元格的Editor的下拉内容部分为readOnly [打印本页]

作者: q798888291    时间: 2014-3-17 09:18:58     标题: 如何指定DataGrid单元格的Editor的下拉内容部分为readOnly

在DataGrid的单元格(type="comboboxcolumn")中,
有一个编辑器Editor(class="mini-combobox")
想要指定它的下拉内容部分为readOnly(假设下拉的内容data="LessionRange")

LessionRange = [
                                { id: 1, text: '第一节' },
                                { id: 2, text: '第二节' },
                                { id: 3, text: '第三节' },
                                { id: 4, text: '第四节' },
                                { id: 5, text: '第五节' },
                                { id: 6, text: '第六节' },
                                { id: 7, text: '第七节' },
                                { id: 8, text: '第八节' },
                            ];
希望id为1,2,3,4的为readOnly

现在对DataGrid已经获取了事件oncellendedit="OnCellEndEdit"

那么在function OnCellEndEdit( e ){
      
}

中,我该如何实现?


作者: factory    时间: 2014-3-17 09:57:45

给你的combobox监听onbeforeitemclick 事件
function onbeforeitemclick (e){
var item = e.item;
if (item.xxx== "xxx") {
     e.cancel = true;
}
}
作者: q798888291    时间: 2014-3-17 14:52:57

factory 发表于 2014-3-17 09:57
给你的combobox监听onbeforeitemclick 事件
function onbeforeitemclick (e){
var item = e.item;

[attach]4127[/attach]

我希望的结果是这样的:
当时间范围选择上午时,课节范围只能选择【第一节,第二节,第三节,第四节】
当时间范围选择下午时,课节范围只能选择【第五节,第六节,第七节,第八节】
当时间范围选择上午&下午时,课节范围只能选择【第一节,第二节,第三节,第四节,第五节,第六节,第七节,第八节】

我应该怎么做?


作者: factory    时间: 2014-3-17 15:44:18

q798888291 发表于 2014-3-17 14:52
我希望的结果是这样的:
当时间范围选择上午时,课节范围只能选择【第一节,第二节,第三节,第四节】
...

监听oncellbeginedit

e.editor.setData()来根据e.record.时间范围 来动态设置他的下拉数据

或者监听oncellcommitedit
判断e.record.事件范围 和 e.value ,比如前者等于下午,并且e.value为1,2,3,4节,那么e.cancel = true,不允许把编辑器的值提交到单元格中
作者: q798888291    时间: 2014-3-18 10:19:13

factory 发表于 2014-3-17 15:44
监听oncellbeginedit

e.editor.setData()来根据e.record.时间范围 来动态设置他的下拉数据

谢谢,您的解答很详细。




欢迎光临 jQuery MiniUI (http://miniui.com/discuss/) Powered by Discuz! X2