Question

Je suis en train de mettre en œuvre une fonction simple à l'aide jqGrid, mais il ne semble pas fonctionner et je me demandais si quelqu'un a une explication.

Fondamentalement, une colonne de retour jqGrid (par JSON)

<a href="#" id="special">Click</a>

En dehors de la colonne, j'ai un auditeur jQuery qui est de la forme

$("#special").click(function () { 
  alert("hi");
});

Maintenant, quand j'ai exactement le même a href en dehors la colonne, l'alerte saute vers le haut. Il n'a pas, cependant, lorsque le code est à l'intérieur de la grille dans le cadre de JSON. Est-ce à attendre?

Merci.

FYI la réponse JSON est le long des lignes de

\u003ca href=\"#\" id=\"special\"\u003eClick\u003c/a\u003e

mais je doute que ce soit la question parce que si je fais

<a href="#" onclick="alert('Hi');">Click</a>

il fonctionne.

Était-ce utile?

La solution 2

En fait, je l'ai donné cela comme un non-possibilité. Associez chaque élément à l'aide onclick, mais ne vous attendez pas à travailler si vous essayez de lier un élément à l'intérieur de la grille en utilisant une fonction en dehors du réseau.

Autres conseils

Vous ne précisaient pas dans votre question si vous liez l'auditeur avant ou après la grille a été peuplée - si vous le mettre en place au préalable, il serait utile susceptible d'essayer d'utiliser la méthode .live, par opposition à. cliquez, pour vérifier qu'elle a pris si elle est chargée plus tard.

Par exemple:

$("#special").live("click",function () { 
  alert("hi");
});
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top