我需要检查控制器中表单字段的属性值,所以我有简单的文本框
现在我想检查我的控制器是否被禁用?任何人指导我如何实现这一目标?我在谷歌上搜索了很多,但我什么也没找到,formcollection 也没有提供任何东西。
任何帮助,将不胜感激。
我需要检查控制器中表单字段的属性值,所以我有简单的文本框
现在我想检查我的控制器是否被禁用?任何人指导我如何实现这一目标?我在谷歌上搜索了很多,但我什么也没找到,formcollection 也没有提供任何东西。
任何帮助,将不胜感激。
我认为您不想检查文本框本身是否已禁用。如果用户选择它,您可以使用一个复选框和一行 javascript 来禁用该复选框。然后在您的控制器中,您可以检查您从复选框收到的布尔值是否为真。
public ActionResult SomeController (bool IsChecked)
{
if(isChecked){
//Do something
}
return //something
}
if ($('#checkbox1').is(':checked')) {
$("#textbox1").attr("disabled", "disabled");
}
控制器只能访问表单集合中包含的值,并且文本框属性不会随请求一起传递(value
属性除外)。
您可以添加一个隐藏字段来跟踪此类数据。隐藏字段将随请求一起传递,并且可以包含您想要的任何内容。要填充该字段,您很可能会使用 JavaScript,但如果您在呈现视图时知道元素的属性,也可以在服务器端设置值。
或者,也许您可以查看更改的原因。例如,如果选择 a 中的某个选项<select>
导致更改,您可以查看发布的值<select>
并推断必须禁用文本框。
所有人都说,我不确定你为什么要这样做。通常最好管理动作的根本原因(即为什么要设置属性?)而不是副作用。