2009-04-22 8 views
1

Complètement nouveau à JQuery donc j'apprends tous les jours.Fonctions réutilisables JQuery

Une chose que je remarqué comment il est facile, vous pouvez simplement écrire

$('div#test).remove(); 

Mais je suis à la recherche d'un exemple sur la façon de réutiliser un code, par exemple .:

function RemoveTableRow(row, id) 
{ 
    $(row).remove(); 
    // id should be used for ajax call 
} 

Et puis ajoutez un « onclick » sur mon ancre tag

onclick="RemoveTableRow('user-row-1', 32);" 

Mais de toute façon il ne fonctionne pas, même si je l'ajoute sur document.ready fonction. Quelqu'un peut-il le découper pour moi, la meilleure façon de faire cela?

Merci d'avance. Ce forum est tueur!

Mise à jour

I mis à jour le code de l'aide que je suis arrivé ici. C'est mon code actuel, et j'aimerais savoir si c'est le meilleur moyen de le faire.

function RemoveTableRow(row, id) { 
      $.ajax({ 
      type: "POST", 
      url: "Default.aspx/DeleteEmployee", 
      data: "{'ID':'" + id + "'}", 
      beforeSend: function() { 
        $("#" + row).animate({'backgroundColor':'#fb6c6c'},300); 
      }, 
      success: function() { 
       $("#" + row).slideUp(300,function() { 
        $("#" + row).remove(); 
       }); 
      } 
     }); 
    } 
+0

Vous obtenez des erreurs JavaScript? – harto

+0

Le code de votre modification semble correct et semble être le meilleur moyen de le faire. Je ne le changerais pas. –

Répondre

1

est-ce que user-row-1 est l'ID de la ligne du tableau? Si oui, que vous manque dans votre sélecteur #

function RemoveTableRow(row, id) { 
    $('#'+row).remove(); 
    // id should be used for ajax call 
} 

ou sans changer la fonction, appelez avec le sélecteur complet

onclick="RemoveTableRow('#user-row-1', 32);" 
+0

Bien sûr! Cela marche! Est-ce la meilleure façon de faire cela? Ou recommandez-vous quelque chose d'autre? –

+0

Ce n'est pas un mauvais moyen, mais vous pourriez utiliser plus de capacités jQuery. Si vous avez un bouton supprimer dans chaque ligne (lisez simplement votre commentaire à la réponse de kgiannakakis) par exemple (

+0

C'est génial. Mais je dois passer quelques paramètres avec le clic? –

0

Où souhaitez-vous pour lier le onclick? En supposant que ce soit un élément DOM avec id myid, alors ceci fera:

("#myid").click(function() {RemoveTableRow('user-row-1', 32);}); 
+0

J'ai quelques lignes de table avec un bouton de suppression à la fin de chaque, où la sortie est du code dynamique, donc j'ai besoin d'éviter le ID codé en dur sur lequel cliquer. –

Questions connexes