Advertisement
Guest User

ajax get-post example

a guest
Jan 29th, 2015
179
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
HTML 2.80 KB | None | 0 0
  1. <!--
  2.  
  3.     Route::get('/test', function(){
  4.         return View::make('test');
  5.     });
  6.  
  7.     Route::post('/test-send', function(){  
  8.         switch (Input::get('id')) {
  9.             case 'a-1':                    
  10.                 return Response::json(array('message'=>'ok', 'id'=>'a-1','name'=>'HAHA', 'age'=>"21"));
  11.                 break;
  12.             case 'b-1':        
  13.                 return Response::json(array('message'=>'ok', 'id'=>'b-1','name'=>'BEHE', 'age'=>"75"));
  14.                 break;     
  15.         }      
  16.     });
  17.  
  18.     Route::get('/test-proc', function(){
  19.         switch (Input::get('id')) {
  20.             case 'a-1':        
  21.                 $data['id'] = "a-1";
  22.                 $data['name'] = "Popescu";
  23.                 $data['age'] = "20";
  24.                 break;
  25.             case 'b-1':
  26.                 $data['id'] = "b-1";
  27.                 $data['name'] = "Ionescu";
  28.                 $data['age'] = "55";
  29.                 break;     
  30.         }
  31.         return Response::json($data);
  32.     });
  33.  
  34. -->
  35.  
  36. <!DOCTYPE html>
  37. <html lang="en">
  38. <head>
  39.     <meta charset="UTF-8">
  40.     <title>Test</title>
  41.     <script src="//code.jquery.com/jquery-1.11.2.min.js"></script>
  42.     <script>
  43.     $(function(){
  44.         var $modal = $('.modal');
  45.         var $id = $('form input[name="id"]');
  46.         var $name = $('form input[name="name"]');
  47.         var $age = $('form input[name="age"]');
  48.         var $submit = $('form input[type="submit"]');
  49.  
  50.         $submit.on('click', function(e){
  51.             e.preventDefault();
  52.             var Fdata = new FormData($('form').get(0));
  53.             $.ajax({
  54.                 type: 'post',
  55.                 url: 'test-send',
  56.                 processData: false,
  57.                 contentType: false,    
  58.                 data: Fdata,               
  59.                 success: function(data){
  60.                     if(data.message=='ok'){
  61.                         $('td[data-id="'+data.id+'"]').parent().find('td:first-child').html(data.id);                      
  62.                         $('td[data-id="'+data.id+'"]').parent().find('td:nth-child(2)').html(data.name);                       
  63.                         $('td[data-id="'+data.id+'"]').parent().find('td:nth-child(3)').html(data.age);                    
  64.                         $modal.hide();                 
  65.                     }
  66.                 }
  67.             });        
  68.         });
  69.  
  70.         $('a').each(function(i,e){
  71.             $(e).on('click', function(ev){
  72.                 ev.preventDefault();
  73.                 $.ajax({
  74.                     url: 'test-proc',
  75.                     data: {id:$(this).parents('tr').find('td:first-child').attr('data-id')},               
  76.                     success: function(data){
  77.                         $modal.show();                     
  78.                         $id.val(data.id);
  79.                         $name.val(data.name);
  80.                         $age.val(data.age);
  81.                     }
  82.                 });
  83.             });
  84.         });
  85.     });
  86.     </script>
  87. </head>
  88. <body>
  89.     <table>
  90.         <tr>
  91.             <td data-id="a-1">A 1</td>
  92.             <td>2</td>
  93.             <td>3</td>         
  94.             <td><a href="#">edit</a></td>
  95.         </tr>
  96.         <tr>
  97.             <td data-id="b-1">B 1</td>
  98.             <td>2</td>
  99.             <td>3</td>         
  100.             <td><a href="#">edit</a></td>
  101.         </tr>
  102.     </table>
  103.     <div class="modal" style="display: none; position: absolute; top:0; left:0;bottom:0;right:0; background:lightgray">
  104.         <form action="test-send" method="post">
  105.             <input type="text" name="id" placeholder="ID"><br>
  106.             <input type="text" name="name" placeholder="Name"><br>
  107.             <input type="text" name="age" placeholder="Age"><br>
  108.             <input type="submit">
  109.         </form>
  110.     </div>
  111. </body>
  112. </html>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement