2009-07-16 7 views
0

Ich habe eine Datei data.php, wenn ein Benutzer auf Update klickt die Datenbank im Hintergrund mit jquery aktualisiert wird, aber als Antwort möchte ich die bestimmte Tabelle neu laden, deren Daten aktualisiert wurden.Laden eines Elements der gleichen Datei durch jquery

mein html:

<div id="divContainer"> 
<table id="tableContainer" cellspacing='0' cellpadding='5' border='0'> 
<tr> 
    <td>No.</td> 
    <td>Username</td> 
    <td>Password</td> 
    <td>Usage Left</td> 
    <td>%</td> 
</tr><!-- Multiple rows with different data (This is head of table) --> 

meine Jquery:

$('#UpdateAll').click(function() { 
      $.ajax({ 
      type: 'post', 
      url: 'update.php', 
      data: 'action=updateAll', 

      success: function(response) { 
       $('#response').fadeOut('500').empty().fadeIn('500').append(response); 

       $('<div id="divContainer" />').slideUp('500').empty().load('data.php #tableContainer', function() { 
        $(this).hide().appendTo('#divContainer').slideDown('1000'); 
       }); 
      } 
      });  
     }); 

Alles funktioniert gut die Datenbank aktualisiert wird immer und #response in Erfolg wird immer mit Erfolgsmeldung geladen, aber die Tabelle ist nicht erfrischend.

Antwort

0
 $('#UpdateAll').click(function() { 
     $.ajax({ 
     type: 'post', 
     url: 'update.php', 
     data: 'action=updateAll', 

     success: function(response) { 
      $('#response').fadeOut('500').empty().fadeIn('500').append(response); 

      $('#divContainer').slideUp('1000').load('data.php #tableContainer', function() { 
       $(this).hide().appendTo('#tableContainer').slideDown('1000'); 
      }); 
     } 
     });  
    }); 
+0

Es sah aus wie dies zunächst von der Frage dupliziert wurde , aber bei näherer Betrachtung sehe ich einige Unterschiede. Könnten Sie dies bearbeiten, um anzugeben, ob Sie das geändert haben, damit es funktioniert? –

0

Sie haben schon ein div mit der ID divContainer aber Sie erstellen dieses Element wieder

$('<div id="divContainer " />').slideUp.... 

Sie brauchen

$('#divContainer') 
     .slideUp('500') 
     .empty() 
     .load('data.php #tableContainer', function() { 
      $(this).slideDown('1000'); 
      }); 
Verwandte Themen