rodrix rodrix - 4 months ago 18
PHP Question

keep disabled input field disabled when checked

ok guys i got this working just fine but am having an issue say supposing user submits the form thought the checkbox field stays checked but the disabled input field datepicker is not disabled any more.

here is my code

if(isset($_POST['present'])){
$checked = "checked";
$rjobto1 ="Present";
}else{
$rjobto1 ="".$_POST['rjobto1']."";
}

<script type="text/javascript" >
function disableMyText(){
if(document.getElementById("present").checked == true){
document.getElementById("datepicker2").disabled = true;
}else{
document.getElementById("datepicker2").disabled = false;
}
}
</script>

<small><b><input type="checkbox" id="present" name="present" onClick="disableMyText()" <?php echo $checked;?>/> Presently Working</b></small>
<input type="text" name="rjobto1" class="form-control input-lg datepicker" id="datepicker2" placeholder="To" value="<?php if(isset($error)){ echo $rjobto1; } ?>" tabindex="2" />

Answer

Call the JavaScript function on page load:

function disableMyText(){  
                  if(document.getElementById("present").checked == true){  
                      document.getElementById("datepicker2").disabled = true;  
                  }else{
                    document.getElementById("datepicker2").disabled = false;
                  }  
        }
        disableMyText();
<small><b><input type="checkbox" id="present" name="present" onClick="disableMyText()" <?php echo $checked;?>/> Presently Working</b></small>
<input type="text" name="rjobto1" class="form-control input-lg datepicker" id="datepicker2" placeholder="To" value="<?php if(isset($error)){ echo $rjobto1; } ?>" tabindex="2" />

Edit: Please note to put the JavaScript at the bottom of the form, otherwise it will fail. So first the two input fields, then the JavaScript.

Comments