Показать сообщение отдельно
  #1 (permalink)  
Старый 08.08.2013, 17:50
Новичок на форуме
Отправить личное сообщение для m175 Посмотреть профиль Найти все сообщения от m175
 
Регистрация: 08.08.2013
Сообщений: 3

jQuery - codeigniter. Невозможно удалить второй елемент на странице
Здравствуйте,

На страницу загружаются елеменьы с БД, которые нужно выборочно удалять. После удаления любого елемента, <div> обновляется, но дальше нет возможности удалять, так как селект не срабатывает.

это упрощенный пример. На страницу "test" загружаются id с БД, формируются кнопки с value='id' (значение id - с БД). После чего кликаю на кнопку, значение id передается в функцию test_delete($id), удаляется запись с БД и потом формируется html которые передается назад в вид test и затирает старые данные.

После этого jquery селект не срабатывает.
Что надо исправить чтоб можно было удалять любые даные на странице ?

Контролер:

function test_contr(){
   $this->load->model('admin/Product_crud');
   $data['query']=$this->Product_crud->test_model_select_data();
   $this->load->view('admin/test',$data);
   
}

function test_delete($id){
   $output = NULL;
   //var_dump($id);
   $this->load->model('admin/Product_crud');
   $this->Product_crud->test_delete($id);
   $data['query']=$this->Product_crud->test_model_select_data();
   
   foreach($data['query'] as $row){
      $output .= $row->id."<input class='del_picture' type='button' value='".$row->id."' name='id'>";
   }
  // echo $output;
    echo json_encode($output);
   //var_dump($data);
   //$this->output->enable_profiler(TRUE);
   
}


Модель: выкладывать нет необходимости

Вид:

<!DOCTYPE html>
<html>
   <head>
   <META http-equiv="Content-Type" content="text/html; charset=utf-8">   
   <script src="/script/jquery-1.9.1.min.js"></script>
   </head>
<body>
   
   
<div class="result_table">
   
<?php
foreach ($query as $row){
   echo $row->id."<input class='del_picture' type='button' value='".$row->id."' name='id'>";
}
?>  
</div>
   
   <script>
$(".del_picture").on("click", function(){
  
   var id =  $(this).attr("value");
     var myurl = '<?php echo base_url()."admin/main/test_delete/"?>';
     
    var url = myurl + id;
    $.ajax({
            url: url,
            type:'GET',
            dataType: 'json',
            
            success: function(update_html){
                    $(".result_table").html(update_html);
                     
                } 
            });    
   
});
</script>

</body>
</html>
Ответить с цитированием