禁用=输入类型上的“已禁用”复选框不起作用

时间:2017-05-31 14:01:49

标签: html asp.net-mvc razor checkbox

我有以下代码:

<div class="row" style="margin-top:1%;">
 <div class="col-md-12">
  <ul class="List">
    @foreach (var req in requests)
    {
     <li>
      <div>
        @if(req.Equals("Test"))
        {
         <label><input type="checkbox" onclick="setRequestor(this)" />@req</label>  
        }
        else
        {
         <label><input type="checkbox" disabled="disabled" />@req</label>   
        }
      </div>
     </li>
    }
  </ul>
 </div>
</div>

问题是 disabled =“disabled”总是被忽略。如果我使用开发人员工具检查代码,我看不到禁用属性。我只看到了:

<input type="checkbox" /> 

编辑这是呈现的HTML:

<div class="row" style="margin-top: 1%;">
    <div class="col-md-12">
        <ul class="List">
            <li>
                <div>
                    <label><input type="checkbox">TEST3</label>
                </div>
             </li>
             <li>
                 <div>
                     <label><input onclick="setRequestor(this)" type="checkbox" >TEST</label>
                 </div>
             </li>
             <li>
                <div >
                    <label><input type="checkbox">TEST2</label>
                 </div>
             </li>
        </ul>
    </div>
</div>

编辑2 我使用attribute =“checked”进行了测试,但它确实有效。只有“禁用”不起作用

编辑3解决方案我解决了CSS类的问题

3 个答案:

答案 0 :(得分:1)

@Html.CheckBox("checkBoxId", new { @disabled = "disabled"})

fn1 <- function() {
  dt1 <- data.table(a = 1:10, b = 10:1)

  setkey(dt1, a)
  print(dt1[, b])
  fn2(dt1)
  print(dt1[, b])

  setorder(dt1, a)
  print(dt1[, b])
  fn3(dt1)
  print(dt1[, b])
}
fn2 <- function(dt2) {
  keys <- key(dt2)
  setkey(dt2, b)
  setkeyv(dt2, keys)
}
fn3 <- function(dt2) {
  #How do I extract the current ordering of dt2? e.g., ord <- getorder(dt2)
  setorder(dt2, b)
  #Restore the original ordering of dt2: setorderv(dt2, ord)
}

答案 1 :(得分:0)

您如何知道此检查是否有效:

 @if(req.Equals("Test"))

对我来说,似乎您的代码由于某种原因没有输入“else”子句。

答案 2 :(得分:-2)

请尝试以下方法:

@else
    {
     <label><input type="checkbox" disabled/>@req</label>   
    }

如果您使用的是刀片模板,那么在其他之前需要@符号。