2016-10-21 19 views
0

Ich habe eine Checkbox und ein Eingabefeld, das nach der Überprüfung der Chekbox aktiviert wird. Ich möchte, dass das Eingabefeld bereits aktiviert ist, wenn der Benutzer den Datensatz bearbeiten möchte. Bedeutet, dass nach Benutzer Checkbox und füllt die Eingabe und nach dem Senden, wenn er es ändern möchte Feld sollte bereits aktiviert sein.Überprüfen, ob die Texteingabe nicht leer ist

Was ich in Javascript haben:

$(document).ready(function() { 
     $('.checkbox').change(function() { 
      $(this).parent().next().find('.field').prop('disabled', !$(this).is(':checked')) 
     }); 
    }); 

und erweiterte Kontrollkästchen:

<div class="row"> 
     <div class="small-8 large-8 columns"> 
     <label>Process: <small style="color:red;">*</small>   
      <div class="multiselect">    
       <div class="selectBox" onclick="showCheckboxes()"> 
       <select onclick="showCheckboxes()"> 
        <option>-- Select an option --</option> 
       </select> 
       <div class="overSelect"></div> 
       </div> 
       <div class="scrollable" id="checkboxes"> 
       <?php 
        while ($row = mysqli_fetch_array($result)) 
        { 
         $row[0] = cleanOutputData($row[0]); 

         if(isset($process)) 
         { 
          foreach($process as $code) 
          { 
           if($row[0] == $code) 
           { 
            $match = 1; 
            break; 
           } 
           else 
            $match = 0; 
          } 
         } 
         if(isset($requiredNo) && isset($process)) 
         { 
          foreach($process as $key => $code) 
          { 
           if($row[0] == $code && $requiredNo[$key] != 0) 
           { 
            $match4 = 0; 
            break; 
           } 
           else 
            $match4 = 1; 
          } 
         }       
       ?> 
        <div class="row"> 
         <div class="small-12 large-12 columns"> 
         <label style="height: 37px; width:80%; float:left;" > 
         <input type='checkbox' class="checkbox" style="margin-left:5%; width:15%;" name='process[]' id=<?php echo $row[0] ?> value="<?php echo $row[0] ?>" <?php if (isset($process) && $match==1) echo 'checked="checked"' ?>/><?php echo $row[0] ?> 
         </label> 

         <label style="width:40%; margin-left:60%;"> 
         <input type="text" class="field" disabled style="width:40%;" name="numberpl" id="<?php echo $row[0] ?>" value= "<?php if (isset($requiredNo) && $match4==0) echo $requiredNo[$key] ?>" required/> 
         </label> 
         </div> 
        </div> 

       <?php 
        } 
        mysqli_free_result($result); 
       ?> 
       </div> 
      </div> 
     </label> 
     </div> 
    </div> 

So Frage ist, wie ich aktiviert ein Feld machen kann, wenn sie nicht leer ist? Dank

Antwort

2

Sie könnten versuchen, Kontrollkästchen am fertigen Laden auszulösen:

$(document).ready(function() { 
     $('.checkbox').change(function() { 
      $(this).parent().next().find('.field').prop('disabled',!$(this).is(':checked')); 
     }); 
$('.checkbox').trigger('change'); 
}); 
0

Dies könnte Ihnen helfen,

If($('input.field').val().length > 0){ 
     $('input.field').prop('disabled', false); 

} 
+0

Bitte legen, in '$ (document) .ready()' Methode. – Samir

0
if($('.field').val().length) { 
    $('.field').prop('disabled', false); 
} 
0

Sie können diese mit value Eigenschaft in Javascript tun:

if(document.getElementById('#yourinputid').value != ""){ 
    document.getElementById('#yourinputid').disabled = "false"; 
} 
0

s eit Sie Looping dann gibt es viele Eingabetext dort verwenden am nächsten sie dieses

$(document).ready(function() { 
    $('.checkbox').change(function() { 
     if ($(this)[0].checked == true) { 
      $(this).closest('.field').removeAttr('disabled'); 
     } else { 
      $(this).closest('.field').attr('disabled', 'disabled'); 
     } 
    }); 
}); 
0

benutzen Sie: diese

$(document).ready(function() { 

      if($('input[name="numberpl"]').val().length() != 0){ 
       $('input[name="numberpl"]').attr('disabled', false); 
      } 
      $('.checkbox').change(function() { 
       $(this).parent().next().find('.field').prop('disabled', !$(this).is(':checked')) 
      }); 
     });