2017-01-05 6 views
-2

複数のチェックボックスを含むフォームがあります。編集ボタンをクリックした後、jqueryを使用してデータベースの値に従ってチェックボックスをチェックしますか?jquery ajaxを使用してチェックボックスを更新する

<form id="frmAddBand" name="frmAddBand" method="post" action="" onsubmit="return (checkc() == 1)"> 

      <fieldset> 

       <ol> 
        <li> 
         <label >Band Code <em>*</em></label> 
         <input id="bandCode" type="text" name="bandCode" /> 
         <span id="code_status" style="color:red;" ></span> 
        </li> 
        <li> 
         <label >Band Name<em>*</em></label> 
         <input id="bandName" type="text" name="bandName" /> 

        </li> 
        <li> 
         <label >Designation<em>*</em></label><br/><br/><div style="height:100px;background-color:#fff;overflow:auto;"><br/><?php $des_code = array_keys($designation); 
           $des_name = array_values($designation); 
          for($i=0;$i<count($des_code);$i++){?> 
         <input type="checkbox" name="des" id="des" value="<?php echo $des_code[$i];?>"/><span style="font-size:12px;"><?php echo $des_name[$i];?></span><br/><br/><?php }?> 
         </div> 
        </li> 

              <li class="required new"> 
              <input type="text" id="demo" name="demo" /> 
         <em>*</em> Required field      </li> 
             </ol>  


            <p><input id="click_submit" name="click_submit" Value="Save" type="button"> 
        <input id="click_cancel" name="click_cancel" Value="Cancel" type="button" >     
       </p> 

      </fieldset> 
     </form> 

コントローラ:

public function band_edit($id) 
      { 
      $this->load->helper('url'); 
      $this->load->database(); 
      $this->load->model('Ohs_Bandmodel'); 


      $data = $this->Ohs_Bandmodel->get_by_id($id); 
       echo json_encode($data); 
      } 

スクリプト:

function edit_band(id) 
        { 

         $("#frmAddBand")[0].reset(); 

         //Ajax Load data from ajax 
        $.ajax({ 
          url : "<?php echo base_url(); ?>index.php/Ohs_Cband/band_edit/" + id, 
          type: "GET", 
          dataType: "JSON", 
          success: function(data) 
          { 
        var b=data.desig; 
        var arr = b.split(","); 
        //alert(arr[1]); 
           for(i=0;i<arr.length;i++){ 
            $('input[type=checkbox]').each(function(){ 
             //alert(arr[i]); 
             if($(this).val()==arr[i]){ 
           $(this).prop('checked', true); 
           } 
           else{ 
            $(this).prop('checked', false); 
           } 
           }) 
           } 
           $('[name="bandCode"]').val(data.band_code); 
           $('[name="bandName"]').val(data.band_name); 

           $('[name="click_submit"]').val('Update'); 
           $('[name="bandCode"]').attr("readonly", true); 
           $('[name="bandCode"]').css('background-color' , '#DEDEDE'); 
           //$("#click_cancel").attr('visibility', 'visible'); 
           $('#click_cancel').show(); 
          }, 
          error: function() 
          { 
           //alert('Error get data from ajax'); 
           $('[name="bandCode"]').attr("readonly", false); 
           $('[name="bandCode"]').css('background-color' , '#FFF'); 
           $('[name="bandCode"]').removeAttr("disabled"); 
           $("#Notify").data("mtype","E"); 
           $("#Notify").data("msg","error in record.") 
           $('#Notify').trigger('click'); 
           //$("#click_cancel").attr('visibility', 'hidden'); 
          } 
         }); 
        } 

this is my form

私は編集の再をクリック事前のおかげで...ここで

は図でありますコードすべて正常に動作しますが、代わりに、レコード内のデータに基づいて2チェックボックスをチェックすると、それが唯一の1 checkbox.AnyヘルプはjQueryのチェックボックスのチェックを外し/確認するにはappreciated.Thanks

+0

いくつかのコードを貼り付けてください –

+0

フォームとPHP用にコードを追加する必要があります。あなたは何を自分で試していますか、どんな問題に挑戦しましたか?あなたの質問は非常に簡単で、編集が必要です。 – Option

+0

あなたのコードであなたのコードをフォーマットしてください、それはhightlightingコードとCTRL + Kでできます、ありがとう! – Alex

答えて

0

だろうチェック:

1 - チェックするには

$("yourCheckboxId").prop("checked",true); 

2 - オフにし

$("yourCheckboxId").prop("checked",false); 

あなたのロジックでこのコードサンプルを使用してください。

+0

いいえ、基本的に私は私が編集レコードをクリックすると、すべてのデータがHTML形式でそこにあるはずですので、更新したいレコードがあります。だから私は、チェックボックスをフォーム上のフォームの値に応じてチェックするようにしたい。 –

+0

jqueryを使ってレコードの配列を持っているので、値が配列内にあるチェックボックスだけをチェックしたい。 –

関連する問題