在MVC 3中选中复选框,启用/禁用客户端的所有控件

时间:2013-06-24 08:46:14

标签: c# asp.net-mvc

我想在客户端启用和禁用.cshtml上的所有控件。由于此功能适用于所有页面,因此没有。控件不固定,我不想启用和禁用单独控制。必须通过某种方式在复选框单击时禁用/启用所有控件。我使用@HTML辅助类来生成输入控件,以下是相同的

示例
@Html.Label("lblEnableDisableTimeGen", "txt_EnableDisableTimeGen", "EnableDisableTimeGen")
@Html.CheckBox("chkEnableTimeGenProgram",true)

5 个答案:

答案 0 :(得分:0)

你可以试试这个:

//Code Starts
$(document).ready(function() {
    $("#btnDisable").click(function(e) {
        $("*").attr("disabled", "disabled");
        e.preventDefault();
    });
});​
//Code Ends

答案 1 :(得分:0)

在页面上使用JQuery:

function toggleChecked(status) {
   $("INPUT[type='checkbox']").each( function() {
   $(this).attr("checked",status);
})

这会检查您网页上的所有复选框。您可以使用按钮的onClick,例如:

onclick="togggleChecked(true)";

答案 2 :(得分:0)

使用javascript是一个选项吗?

您可以在复选框上设置点击处理程序,然后只需停用表单上的所有输入

答案 3 :(得分:0)

如果jquery允许试试这个,

禁用---     $(“#parent-selector:input”)。attr(“disabled”,“disabled”);

启用----     $(“#parent-selector:input”)。removeAttr(“disabled”);

答案 4 :(得分:0)

我找到了这样做的方法。这是示例

  1. 在div中定义所有控件。 例如:     

     control1....
    
     control2....
    
    </div>
    
  2. 使用下面的脚本启用和禁用div

    中的所有控件

    function EnableDisable() { dojo.query(“input,button,textarea,Select,div”,TimeGenProgramEnableDisable).attr(“disabled”,!chkEnableDisable.checked); }

  3. 请注意,我们正在使用DOJO工具包