Passage d’une variable dans la syntaxe d’une fonction load () jquery

J’essaie de savoir comment passer une chaîne variable staffID à un sélecteur d’identifiant dans la fonction load (). Voici le morceau de code:

$('li.staffAsset').click(function () { var staffID = $(this).attr("id"); openDialog('#descrDialog'); $('#staffDescr p').load('/staffDescr.html $("#" + staffID)'); }); 

Ça ne marche pas. En gros, il y a des divs avec id = “staffID” dans staffDescr.html. Je n’arrive tout simplement pas à trouver la syntaxe appropriée pour transmettre cette chaîne de variable en tant qu’identificateur approprié à la fonction load (). Quelqu’un peut-il aider s’il vous plaît?

Vous ne passez pas la fonction dollar dans la chaîne. Il suffit d’utiliser ceci:

 $('#staffDescr p').load('/staffDescr.html #' + staffID); 

Voir la documentation: Chargement de fragments de page .


En outre, il n’y a pas besoin de $(this).attr("id") . Il suffit d’utiliser this.id :

 $('li.staffAsset').click(function () { openDialog('#descrDialog'); $('#staffDescr p').load('/staffDescr.html #' + this.id); }); 

Vous avez foiré les citations. Pour simplement mettre l’identifiant dans votre chaîne, vous pouvez remplacer

 $('#staffDescr p').load('/staffDescr.html $("#" + staffID)'); 

avec

 $('#staffDescr p').load('/staffDescr.html $("#"' + staffID+')'); 

Mais vous voulez probablement

 $('#staffDescr p').load('/staffDescr.html #' + staffID); 

si vous essayez de charger un fragment de page .