J'ai créé un objet JS d'objet personnalisé CalendarViewerPortlet. Dans cet objet, je stocke des choses comme l'identifiant du portlet et son chemin de contexte. L'objet possède également de nombreuses méthodes personnalisées, certaines pour obtenir/définir les variables membres et d'autres pour faire des choses spécifiques.Utilisation de "this" dans les fonctions de jQuery
Lorsque j'essaie de référencer une fonction de l'objet en utilisant "this". à l'intérieur d'une fonction jQuery, il explose. Je comprends que le terme «ceci» dans ce contexte fait probablement référence à quelque chose d'autre, mais je ne suis pas sûr de savoir comment contourner le problème et le faire référencer l'objet, comme je le veux.
Voici le code incriminé:
jQuery.ajax({
url: jQuery(formSel).attr("action"),
type: "POST",
data: jQuery(formSel).serialize(),
beforeSend: function(xhr) {
jQuery(msgSel).hide();
jQuery(msgSel).html("");
jQuery(tableSel).hide();
jQuery(pagerSel).hide();
jQuery(cpSelector).block({
message: "<img src='"+this.getContextPath()+"/images/icon_loading.gif' align='absmiddle' alt='Loading...' /> Fetching events..."
});
},
REMARQUE "this.getContextPath()". C'est là que le code échoue. J'essaie de référencer la fonction getContextPath() de mon objet personnalisé. Comment puis je faire ça?
Mais c'est ce que je veux. Je veux que "ceci" fasse référence à mon objet personnalisé, pas n'importe quoi jQuery. – Zendog74