syntaxe étrange variables qui passe jQuery
-
18-09-2019 - |
Question
Je les deux fonctions suivantes:
$(".content").click( function() {
var id = this.id;
$.get("InfoRetrieve", { theid:id }, addContent );
});
function addContent(data){
$("#0001").append(data);
}
Je dois passer la variable « id » de la première fonction à la fonction addContent, je ne comprends pas comment cela fonctionne. Dans l'exemple ci-dessus je passe la variable « données » à la fonction addContent implicitement (il semble). Est-ce que je peux faire quelque chose comme ceci:
Dans la première fonction addContent - devient -> addContent (id)
Dans la seconde fonction
addContent (données) - devient -> addContent (données, id)
ou quelque chose de complètement différent?
Modifier: J'ai fait des modifications selon la suggestion de Denis, mais maintenant il semble que rien ne se passe - auparavant j'avais Sone un peu dur codage donc j'ai pu voir mon « données » étant ajoutées à la place:
$(".content").click( function() {
var id = this.id;
$.get("InfoRetrieve", { theid:id }, addContent {addContent(data, id)} );
});
function addContent(data, id){
alert(id);
$("#0001").append(data);
}
Une autre édition Firefox dit:
) manquant après la liste des arguments
[Pause sur cette erreur] .get de $ ( "InfoRetrieve", {theID: id ..., addContent {addContent (données, id)}); \ n
.... mais cela ne semble pas faire sens puisque pour autant que je peux voir tous les crochets correspondent à autre chose.
La solution
Essayez
$.get("InfoRetrieve", { theid:id }, function(data) {addContent(data, id)} );
Autres conseils
Essayez:
$(".content").click( function() {
var id = this.id;
$.get("InfoRetrieve", { theid:id }, function() {
addContent(data, id);
});
});
function addContent(data, id){
alert(id);
$("#0001").append(data);
}