jQuery MiniUI

标题: 用combobox实现修改信息状态时遇到的问题 [打印本页]

作者: 常常    时间: 2012-8-9 14:40:45     标题: 用combobox实现修改信息状态时遇到的问题

本帖最后由 常常 于 2012-8-9 14:50 编辑

[attach]336[/attach]如上图所示:实现一个岗位发布的功能,其中岗位状态有新建、发布、结束和终止四种状态。
代码:
<div  type="comboboxcolumn"  field="publishStatus" width="100" headerAlign="center" allowSort="true">状态
               <input  property="editor" class="mini-combobox"  style="width:100%;" url="data/status.txt" />
             </div>
status.txt:
[
    { "id": "新建", "text": "新建" },
    { "id": "发布", "text": "发布" },
    { "id": "结束", "text": "结束" },
    { "id": "终止", "text": "终止" }
]
我想要的效果:如果是“新建”可以把状态修改为“发布”状态,同时触发一个事件修改数据库表相关状态;如果是“发布”状态可以把状态修改为“发布”,同样修改表记录;如果是“结束”和“终止”状态不允许修改状态。其中发布岗位信息之后的默认信息状态为“新建”)
现在遇到的问题:不能根据已有的状态,显示对应的操作(状态是不可逆的,比如结束不能修改为新建)。





作者: niko    时间: 2012-8-9 15:17:31

1)从图片上看,你的版本有点旧,你最好下载更新下。
2)你需要控制单元格是否可编辑。请参考:http://miniui.com/demo/#src=datagrid/editable.html
作者: 常常    时间: 2012-8-9 21:19:50

niko 发表于 2012-8-9 15:17
1)从图片上看,你的版本有点旧,你最好下载更新下。
2)你需要控制单元格是否可编辑。请参考:http://mini ...

function OnCellBeginEdit(e) {
            var record = e.record, field = e.field,value=e.value;
                       
            if (field == "publishStatus" && (value== "结束"||value== "终止")) {
                e.cancel = true;    //如果已婚,则不允许编辑性别
            }
        }

这样写了,为什么还是不行?请解释
作者: 常常    时间: 2012-8-10 09:22:12

常常 发表于 2012-8-9 21:19
function OnCellBeginEdit(e) {
            var record = e.record, field = e.field,value=e.value;
                 ...

已经解决了,是我忘记写一段代码了

<div id="datagrid1" class="mini-datagrid" style="width:100%;height:300px;" url="data/IP_GWlist.txt"  idField= "id"  allowResize="true" allowCellSelect="true" multiSelect="true" allowCellEdit="true" oncellbeginedit="OnCellBeginEdit" >


作者: niko    时间: 2012-8-10 12:59:02

嗯,表格的oncellbeginedit允许你精确控制一行、一列、一个单元格是否可编辑。




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