编辑期间设置Telerik MVC网格列属性

编辑期间设置Telerik MVC网格列属性,telerik,telerik-grid,telerik-mvc,Telerik,Telerik Grid,Telerik Mvc,我有一个MVC3RazorTelerik网格。我这一行有一个编辑命令 当用户单击“编辑”(这会使用“更新”和“取消”按钮将网格置于编辑模式)时,我希望将其中两列的属性设置为“只读” 当用户单击“取消”或“更新”时,我想将列设置回完全权限 我知道当按下编辑按钮时,控制器中一定有一些属性我应该能够设置,但还没有看到任何关于如何实现这一点的文档 我该怎么做? 我使用的是2011.2.712.340版的控件。您上面描述的内容听起来有点混乱。readonly属性的目的是确保当您的行进入编辑模式时,无法编辑

我有一个MVC3RazorTelerik网格。我这一行有一个编辑命令

当用户单击“编辑”(这会使用“更新”和“取消”按钮将网格置于编辑模式)时,我希望将其中两列的属性设置为“只读”

当用户单击“取消”或“更新”时,我想将列设置回完全权限

我知道当按下编辑按钮时,控制器中一定有一些属性我应该能够设置,但还没有看到任何关于如何实现这一点的文档

我该怎么做?


我使用的是2011.2.712.340版的控件。

您上面描述的内容听起来有点混乱。readonly属性的目的是确保当您的行进入编辑模式时,无法编辑显式设置为readonly的列,这似乎就是您要查找的。在常规读取模式下,无论是否设置了readonly,所有列都将具有相同的权限,因为您只是查看数据而不是编辑

根据评论澄清后编辑:

似乎在插入记录时希望此字段可编辑,但在编辑行时不希望此字段可编辑。这可以使用一些JavaScript来完成。如果使用Ajax绑定(触发此事件的唯一方法),则可以通过订阅onEdit客户端事件来执行以下操作:

...
.ClientEvents(clientEvents => clientEvents.OnEdit("onEdit"))
...
下面是JavaScript:

<script type="text/javascript">
function onEdit(e) {
    var form = e.form;
    var mode = e.mode;

    if (mode == "edit") {
        var country = form.Country; //Country is a public property of my Model
        country.disabled = true;
    }
}

功能OneEdit(e){
var-form=e.form;
var模式=e模式;
如果(模式==“编辑”){
var country=form.country;//country是我的模型的公共属性
country.disabled=true;
}
}


正如您在上面所看到的,我获得了带有关联的已编辑行的表单,并专门获取了与我不希望编辑的属性关联的字段,并禁用了该输入元素。

您上面描述的内容听起来有点混乱。readonly属性的目的是确保当您的行进入编辑模式时,无法编辑显式设置为readonly的列,这似乎就是您要查找的。在常规读取模式下,无论是否设置了readonly,所有列都将具有相同的权限,因为您只是查看数据而不是编辑

根据评论澄清后编辑:

似乎在插入记录时希望此字段可编辑,但在编辑行时不希望此字段可编辑。这可以使用一些JavaScript来完成。如果使用Ajax绑定(触发此事件的唯一方法),则可以通过订阅onEdit客户端事件来执行以下操作:

...
.ClientEvents(clientEvents => clientEvents.OnEdit("onEdit"))
...
下面是JavaScript:

<script type="text/javascript">
function onEdit(e) {
    var form = e.form;
    var mode = e.mode;

    if (mode == "edit") {
        var country = form.Country; //Country is a public property of my Model
        country.disabled = true;
    }
}

功能OneEdit(e){
var-form=e.form;
var模式=e模式;
如果(模式==“编辑”){
var country=form.country;//country是我的模型的公共属性
country.disabled=true;
}
}


正如您在上面所看到的,我获取了带有关联的已编辑行的表单,并专门获取了与我不希望编辑的属性关联的字段,并禁用了该输入元素。

这是正确的,但我使用相同的视图进行编辑和插入。对于插入,这些字段应禁用只读标志。对于编辑,我希望这两个字段启用只读标志。在网格上单击“编辑”时必须发生控制器操作,我可以在该网格中设置控制器中的这些属性。这是正确的,但我使用相同的视图进行编辑和插入。对于插入,这些字段应禁用只读标志。对于编辑,我希望这两个字段启用只读标志。在网格上单击“编辑”时,必须有控制器操作,我可以在控制器中设置这些属性。