2014-01-07 137 views
0

你好,我這裏有問題..阿賈克斯直播頁面加載後刪除(阿賈克斯,笨)

我會用Ajax和笨.. 刪除記錄,但是當數據庫中的記錄中刪除,該視圖沒有按」 T改變.. 我認爲它需要一個活頁加載,但不知道如何..

這是我的看法..

<a class="btn btn-primary" href="#" onclick="deleteFav('<?php echo $favbook[$x]['Bibli'];  ?>')">Delete 
     </a> 

    <script> 
function deleteFav(bibli) 
    { 
     $.ajax({ 
      type :"POST", 
      url  : "<?php echo site_url(); ?>favorite_book/deleteFav", 
      async : false, 
      data : { 
         Bibli:bibli 
         }, 
      success : function(data){ 

      } 
     }); 
    } 
</script> 

這裏是我的模型

function addfav($Bibli, $createTime, $username) 
    { 

     $data_fav = array(
      'Bibli' => $Bibli, 
      'FavoriteDate' => $createTime, 
      'Username' => $username, 
      'CreatedTime' => $createTime, 
      'AuditActivity' => 'I' 
     ); 
     echo $this->db->insert('msfavoriteasset',$data_fav); 

    } 

我控制器

public function deleteFav() 
{ 
    $data = $this->input->post(); 

    print_r($this->input->post('Bibli')); 
    $createTime = date("Y-m-d H:i:s",strtotime('+6 hours'));   
    $success = $this->favoritebook_model->delete($data["Bibli"], $this->session->userdata('username')); 

} 
+0

你的Ajax的成功是空的。你想在那裏做什麼? –

+0

我剛剛刪除我的視圖中的行.. – rena

+1

刪除重定向到控制器後顯示列表 –

回答

1

試試這個: -

<a class="btn btn-primary" href="#" data-bibli="<?php echo $favbook[$x]['Bibli'];  ?>">Delete</a> 

<script> 
    function deleteFav(bibli, this) 
     { 
      $.ajax({ 
       type :"POST", 
       url  : "<?php echo site_url(); ?>favorite_book/deleteFav", 
       async : false, 
       data : { 
          Bibli:bibli 
          }, 
       success : function(data){ 
        $(this).remove(); 
       } 
      }); 
     } 

    $(document).ready(function(){ 
     $(".btn-primary").click(function(){ 
      var bibli = $(this).data("bibli"); 
      deleteFav(bibli, this); 
     }); 
    }); 
</script> 

不要忘了加上onclick="deleteFav('<?php echo $favbook[$x]['Bibli']; ?>', this)

+0

'this'是未定義這裏 –

+0

Delete

+0

抱歉,但它不起作用:( – rena

0

這個參數試試這個代碼在每註釋討論。

success : function(data){ 
       var delay=2000//2 seconds 
       setTimeout(function(){ 

        //your code to be executed after 2 seconds 
        location.reload(); 
       },delay) 

      } 
+0

@durgaprasad抱歉,但它不起作用:( – rena

+0

這是我的評論嗎? –

+0

它是工作,但我可以給一些時間之前重新加載? – rena

0

我假設你需要的是,當用戶點擊刪除,一個人必須從他的收藏列表中刪除,你需要更新的人認爲從列表中刪除。

這是通過以下方式完成的,刪除並更新列表後,您可以刪除該人並將新列表作爲Ajax回覆發送。

success : function(data){ $('#favlist_div').html(data); }

這取代了原來的清單,更新列表。

或者你可以簡單地從列表中刪除的人如下

我假設你有一個圖像和刪除按鈕 上市最愛的人如果回聲$ favbook [$ X] [「Bibli」]是一個唯一的ID

<div id="div_<?php echo $favbook[$x]['Bibli']; ?>"> 
<img .....> 
<a class="btn btn-primary" href="#" onclick="deleteFav('<?php echo $favbook[$x]['Bibli'];?>')"> Delete </a> 
</div> 

然後在成功,你可以簡單地刪除DIV作爲

success : function(data){ $('#div_'+bibli).hide(); }