2017-05-31 4 views
0

Ich habe den folgenden Code funktioniert:disabled = "disabled" auf Checkbox Eingabetyp nicht

<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> 

Das Problem ist, dass disabled = "disabled" wird immer ignoriert. Wenn ich den Code mit Developer Tools überprüfe, sehe ich das deaktivierte Attribut nicht. Ich sehe nur:

<input type="checkbox" /> 

EDIT Dies ist das gerenderte 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> 

EDIT 2 ich mit dem Attribut getestet = "geprüft" und es funktioniert. Nur "disabled" nicht

EDIT 3 Lösung funktioniert ich das Problem mit CSS-Klasse behoben

+0

Haben Sie versucht, nur 'disabled' ohne' = "disabled" '? Es ist ein binäres Attribut, also sollte seine bloße Anwesenheit funktionieren. –

+0

Ja, ich habe versucht, ohne die = "deaktiviert", aber funktioniert nicht – user576914

+0

Es ist unmöglich zu sagen, ohne mehr zu wissen. Bitte fügen Sie das gerenderte HTML ein. –

Antwort

0

Wie wissen Sie, wenn diese Überprüfung funktioniert:

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

Mir scheint es, Ihren Code gibt aus irgendeinem Grund die "else" -Klausel nicht ein.

+0

Dies ist ein Kommentar .... – ediblecode

+0

Auch ohne die "Equal", wenn ich nur "' es zeigt nicht das Attribut "disabled" – user576914

+0

Könnten Sie bitte posten das gerenderte Ergebnis und ein bisschen mehr Informationen darüber, welches Framework Sie verwenden. Diese @ Syntax erinnert mich an PHP. –

-1

Versuchen Sie Folgendes statt:

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

Wenn Sie ein Blade-Vorlage verwenden, dann müssen Sie das @ -Symbol vor dem anderen.

+0

Dies wurde bereits in den Kommentaren erwähnt. –

0

diese

<input type="checkbox" disabled="disabled"/

mit

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