2012-01-31 12 views

risposta

1
<script> 
    $(document).ready(function() { 
     $("Div").attr('disabled','true'); //lock div here 


     var condition=$("#value").val(); 
     if(condition==true) 
       $("Div").attr('disabled','false');//{unlock div here} 
     else{do nothing} 
    }); 
</script> 
0

Se si intende "non mostrare", utilizzare hide(), se si dispone di elementi del modulo in div e si desidera disabilitarli tutti, è necessario disabilitarli uno per uno.

4

Non fare$("#Div").attr('disabled','true');, il problema principale è che con 1.6 (o STH intorno a quella) il confronto con == true è rotto, se il valore di attributi è disabled (vedi http://jsfiddle.net/2vene/1/ (e passare il jquery -versione)). Dovresti preferire il is().

In secondo luogo div non supporta disabled, utilizzare alcuni input. In questo caso il codice sarà simile

<script> 
    $(document).ready(function() { 
    $("#controlId").attr('disabled','disabled'); //lock input control here 

    var condition = $("#value").val(); 
    if(condition == true) 
      $("#controlId").removeAttr('disabled');//{unlock input control here} 
    else{do nothing} 
}); 
</script> 

È possibile controllare jQuery FAQ.

EDIT

Opzionalmente è possibile utilizzare readonly su div per bloccare il meccanismo/sblocco. Controlla la demo di readonly.

Problemi correlati