ok donc je ce répéteur:événement Bind click unique pour chaque élément répéteur (ajax/jquery)
<asp:Repeater runat="server" ID="rep" >
<ItemTemplate>
<tr>
<td>
<div id="resultDiv">
click me
</div>
</td>
</tr>
</ItemTemplate>
</asp:Repeater>
et j'ai cet appel ajax jquery:
$(document).ready(function() {
$("#resultDiv").click(function() {
$.ajax({
type: "POST",
url: "Page.aspx/GetDate",
data: "{}",
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (msg) {
// Replace the div's content with the page method's return.
$("#resultDiv").text(msg.d);
}
});
});
});
le problème est que Cela ne fonctionne que pour la première div à l'intérieur du répéteur. Si je clique sur d'autres divs, l'événement click n'est pas déclenché. Je sais que c'est parce qu'ils ont tous le même id, étant "resultDiv".
Je suis maintenant à la recherche d'une façon de leur donner ID uniques, ce qui est quelque chose que je peux faire comme ceci: (à l'intérieur du répéteur itemtemplate)
<td>
<div id="resultDiv_<%#Eval("divId") %>">
click me
</div>
Cela donne tous les divs à l'intérieur du répéteur un identifiant unique , mais cette façon, l'événement ne marche pas cliquable ajax feu plus parce que
$("#resultDiv").click(function() {
resultDiv
est maintenant quelque chose comme resultDiv_1
ou resultDiv_2
. Je cherche donc quelque chose pour lier un événement click à chaque div à l'intérieur du répéteur. J'ai essayé de le faire comme ceci dans l'appel d'ajax:
$("#<%#Eval("divId") %>").click(function()
mais cela ne fonctionne pas et me donne toutes sortes d'erreurs.
Y at-il un moyen de le faire? S'il vous plaît ne pas que je ne veux pas utiliser les panneaux de mise à jour.
Il est un moyen passant des données du DOM à javascript si vous en avez besoin, voir ce [intéressant blog médecin de html5] (http://html5doctor.com/html5-custom-data- les attributs/) :). Souhaitez-vous envoyer la même requête ajax ** sur chaque résultatDiv? – soyuka
kk merci beaucoup mec, j'ai enfin eu ce travail. à propos du temps, j'étais sur le point de manger mon clavier par pure frustration. Merci encore! – Thousand