2016-10-08 5 views
0

Laravelフレームワークといくつかのjqueryコードを使用しています。セッションを通じてアクセスすると、選択ボックスが無効になります

問題は、私がデータを送信すると、セッションに正常に保存されることです。前のページに戻ると、[選択]ボックスに選択した値が表示されますが、[選択]ボックスは無効になります。私は全く混乱している。私はここで何をするでしょうか?ここで

は私のHTMLコードです: -

<div class="one-row"> 
    <?php foreach ($services as $key => $allservices){ 
    if($key <= 3){ 
     if(!empty($data['services'])){ 
     if(in_array($allservices['id'],$data['services'])) { 
      $checked = "checked"; 
     } else { 
      $checked = ""; 
     } 
     } else { 
     $checked = ""; 
     } 
    ?> 
    <div class="div_img_part-2"> 
     <span class="img_part_class-2"> 
     <img src="{{ 
      asset('images/ServiceImages/'. $allservices['image'])}}"></span> 
     <span class="text_part_class-2"> 
     <span class="check-box"> 
     <input type="checkbox" name="services[]" value=" 
      <?php echo $allservices['id']; ?>" <?= $checked; ?>><?php echo $allservices['name']; ?></span> 
     </span> 
     <select name="services[<?php echo $allservices['name'];?>]"class="selectpicker"> 
     <option value="">Select Your Sevice</option> 
     <option value="Salon" <?php if(!empty($data['services'][$allservices['name']])){ if($data['services'][$allservices['name']] == "Salon") {?> selected 
     <?php } } ?> >Salon</option> 
     <option value="Mobile beautician" <?php if(!empty($data['services'][$allservices['name']])){ if($data['services'][$allservices['name']] == "Mobile beautician") {?> selected 
     <?php } }?> >Mobile beautician</option> 
     <option value="Both" <?php if(!empty($data['services'][$allservices['name']])){ if($data['services'][$allservices['name']] == "Both") {?> selected 
     <?php } } ?>>Both</option> 
     </select> 
    </div> 
    <?php } } ?> 
</div> 

そして、私のjqueryのコードになります -

<script> 
    $(document).ready(function() { 
    $(".div_img_part-2 .selectpicker").attr("disabled",true); 
    $('.selectpicker').selectpicker('refresh'); 
    $(".check-box input[type='checkbox']").on("change", function() { 
     if ($(this).prop("checked") == true) { 
     $(this).parents(".div_img_part-2").find(".selectpicker").removeAttr("disabled"); 
     $('.selectpicker').selectpicker('refresh'); 
     }else{ 
     $(this).parents(".div_img_part-2").find(".selectpicker").attr("disabled",true); 
     $('.selectpicker').selectpicker('refresh'); 
    } 
    }); 
    }); 
</script> 

を最初に選択(編集) enter image description here

enter image description here

を選択します

注: - ユーザーがチェックボックスを選択すると、選択ボックスは登録時にアクティブになります。すべての私のデータはLaravelでセッションに保存されている私を助けてください:(

答えて

1

あなたは、ページがロードされると、これを実行する必要があります。

$(".check-box input[type='checkbox']").trigger("change"); 

をので、チェックボックスの値がページによって認識される

+0

。チャームのような作品:) – kunal

関連する問題