2017-03-02 2 views
0

아약스를 사용하여 데이터베이스에 데이터를 삽입하려하지만 브라우저에서 테이블의 데이터를 업데이트하기 위해 페이지를로드해야합니다. 내 PAG로드 내가 만들거나 업데이트 후 것을 볼 수 있습니다,하지만, 난 여전히 내 테이블Codeigniter- 페이지를 두 번로드하여 업데이트해야합니다.

form.php

<form action="<?php echo site_url($action); ?>" method="post"> 
    <div class="ibox-content gbItemHolder divider"> 
     <div class="form-group"> 
     <label>Disposition Name</label> 
      <input type="text" name="disposition_name" id="disposition_name" placeholder="Disposition Name" class="form-control mBottom2 " value="<?php echo $disposition_name; ?>"> 
      <?php echo "<p>".form_error('disposition_name')."</p>" ?> 
     <label>Disposition Code</label> 
      <input type="text" name="disposition_code" id="disposition_code" placeholder="Disposition Code" class="form-control mBottom2 " value="<?php echo $disposition_code; ?>"><?php echo "<p>".form_error('disposition_code')."</p>" ?> 

      <label>Disposition Email</label> 
      <div id="tags"> 
      <input type="text" name="email" id="email" placeholder="Enter Email here" class="form-control mBottom2 " value="<?php echo $email; ?>"><!-- <?php echo "<p id='email_validation'>".form_error('disposition_code')."</p>" ?> --> 
      </div> 
      <input type="text" id="tenant_id" name="tenant_id" value="<?php echo $tenant_id; ?>" hidden="true"> 
      <input type="hidden" id="calldisp_id" name="calldisp_id" value="<?php echo $calldisp_id; ?>" /> 

     </div> 
     <div style="margin-top:10px;"> 
       <input type="hidden" name="calldisp_id" value="<?php echo $calldisp_id; ?>" /> 
       <button type="submit" class="btn btn-md btn-primary m-t-n-xs" id="triger" value = "<?php echo $button; ?>"><?php echo $button; ?> Call Disposition</button> 

       <a href="<?php echo site_url('admin/call_disposition') ?>" class="btn btn-md btn-warning m-t-n-xs">Cancel</a> 

     </div> 
    </div> 
    </form> 

js_files_includes.php에 결과를보고 다시는 내 페이지를로드 할 필요

$('#triger').click(function(){ 
        var btn_value = $('#triger').val(); 
        var tenant_id = $('#tenant_id').val(); 
        var calldisp_id = $('#calldisp_id').val(); 
        var disposition_name = $('#disposition_name').val(); 
        var disposition_code = $('#disposition_code').val(); 
        var email = $.map($("#tags span"), function(elem, index){ 
         return $(elem).text(); 
        }); 
        var myJsonString = JSON.stringify(email); 
        //alert(myJsonString); 
         if(btn_value == 'Create'){ 

          $.ajax({ 
           url:"<?php echo base_url(); ?>admin/call_disposition/create_email_dispo_dre", 
           method:"POST", 
           data:{email:myJsonString, 
             disposition_name:disposition_name, 
             disposition_code:disposition_code, 
             tenant_id:tenant_id}, 
           dataType: 'json', 
           success:function(data){ 
            toastr.success("Call Disposition Successfully Created"); 
           }, 
          }); 
         } 
         else if(btn_value == 'Update'){ 
          $.ajax({ 
           url:"<?php echo base_url(); ?>admin/call_disposition/update_email_dispo_dre", 
           method:"POST", 
           data:{email:myJsonString, 
             disposition_name:disposition_name, 
             disposition_code:disposition_code, 
             calldisp_id:calldisp_id, 
             tenant_id:tenant_id}, 
           dataType: 'json', 
           success:function(data){ 
            toastr.success("Call Disposition Successfully Updated"); 
           }, 
          }); 
         } 

       }); 

call_disposition.php

,
public function create_email_dispo_dre($id){ 

    $this->_rules(); 

    if ($this->form_validation->run() == FALSE) { 
     $this->update($id); 
    } else { 
    $data = array(
      'tenant_id' => $this->input->post('tenant_id',TRUE), 
      'disposition_code' => $this->input->post('disposition_code',TRUE), 
      'disposition_name' => $this->input->post('disposition_name',TRUE), 
      'email' => $this->input->post('email',TRUE)   
      ); 
    $this->calldisp_model->insert($data); 
    redirect('admin/call_disposition/update/'.$id); 

    } 

} 
public function update_email_dispo_dre(){ 

    $data = array(
      'calldisp_id' => $this->input->post('calldisp_id',TRUE), 
      'disposition_name' => $this->input->post('disposition_name',TRUE), 
      'disposition_code' => $this->input->post('disposition_code',TRUE), 
      'email' => $this->input->post('email',TRUE), 
      'tenant_id' => $this->input->post('tenant_id',TRUE) 
     ); 
     $this->calldisp_model->update($this->input->post('calldisp_id', TRUE), $data); 
     redirect('admin/call_disposition/update/'); 
} 

답변

0

사용 refresh

redirect('admin/call_disposition/update/'.$id,"refresh"); 

redirect('admin/call_disposition/update/', "refresh"); 
1

당신은 당신의 성공 기능에

location.reload(); 

를 사용할 수 있습니다.

+0

@Lynerd :'location.reload()'함수가 페이지를 새로 고침하기 때문에. –

+0

당신은'location.reload()'코드를'setTimeout()'에 넣음으로써 새로 고침 이벤트를 지연시킬 수 있습니다 .so 시간이 지나면 페이지가 다시로드됩니다. –

+0

미안하지만 문제는 여전히 동일합니다. – Dre

관련 문제