-2

.cshtmlクライアント側からすべてのコントロールを有効または無効にしたい。この機能はすべてのページで一般的であり、いいえ. のコントロールが固定されていないため、個別のコントロールを有効または無効にしたくありません。チェックボックスのクリックですべてのコントロールを無効/有効にする方法が必要です。@HTML入力コントロールを生成するためにヘルパー クラスを使用しています。以下は同じ例です。

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

5 に答える 5

1

その方法を知りました。これが例です

  1. すべてのコントロールを div で定義します。例:

     control1....
    
     control2....
    
    </div>
    
  2. 以下のスクリプトを使用して、div 内のすべてのコントロールを有効または無効にします。

    function EnableDisable()
    {
       dojo.query("input, button, textarea, Select, div", 
       TimeGenProgramEnableDisable).attr("disabled", !chkEnableDisable.checked);
    }
    
  3. ここではDOJOツールキットを使用していることに注意してください

于 2013-07-01T13:37:01.110 に答える
0

これを試すことができます:

//Code Starts
$(document).ready(function() {
    $("#btnDisable").click(function(e) {
        $("*").attr("disabled", "disabled");
        e.preventDefault();
    });
});​
//Code Ends
于 2013-06-24T08:50:07.957 に答える
0

ページで JQuery を使用します。

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

これにより、ページのすべてのチェックボックスがチェックされます。ボタンの onClick で使用できます。次に例を示します。

onclick="togggleChecked(true)";
于 2013-06-24T08:50:16.903 に答える
0

JavaScript の使用はオプションですか?

チェックボックスにクリックハンドラーを設定してから、フォームのすべての入力を無効にするだけです

于 2013-06-24T08:50:17.547 に答える
0

jquery が許可されている場合は、これを試してください。

無効にするには:

$("#parent-selector :input").attr("disabled", "disabled");

有効にする:

$("#parent-selector :input").removeAttr("disabled");
于 2013-06-24T08:52:09.487 に答える