2010-06-03 3 views
0

Je ne trouve pas quel est le problème avec ce script. Aidez-moi, s'il vous plaît!La fonction Jquery ne fonctionne pas (avec smarty)

{elseif $text[i].text == "%SubPages"} 

<!-- js--> 
{literal} 
<script type="text/javascript"> 
$(function(){ 
$("#button_{/literal}{$text[i].id}{literal}").click(function(event) { 
event.preventDefault(); 
$("#settings_{/literal}{$text[i].id}{literal}").toggle(); 
}); 
$("#settings_{/literal}{$text[i].id}{literal}").click(function(event) { 
$(this).hide(); 
}); 
}); 
</script> 
{/literal} 

<img src='images/subpages.png' /> 
<!-- button msg--> 
<input type="button" id="button_{$text[i].id}" value="[szerkesztés]"> 
<!-- loading msg--> 
<div class="loading_message" id="settings_{$text[i].id}"><div id="message_content"><b><b><b> 
asdasdasdasd 
</b></b></b></div></div> 
{/if} 

Mon problème est le div (chargement de classe msg) n'apparaît pas sur le clic. Pourquoi?

Le code source HTML:

<li class="default" id="listItem_1041"> 
<a class="ui-icon ui-icon-close" id="1041" onclick="return ajaxTextKill(this.getAttribute('id'));"></a> 
<!-- js--> 

<script type="text/javascript"> 
$(function(){ 
$("#button_1041").click(function(event) { 
event.preventDefault(); 
$("#settings_1041").toggle(); 
}); 
$("#settings_1041").click(function(event) { 
$(this).hide(); 
}); 
}); 
</script> 

<img src="images/subpages.png"> 

<!-- button msg--> 
<input type="button" id="button_1041" value="[szerkesztés]"> 

<!-- loading msg--> 
<div class="loading_message" id="settings_1041"><div id="message_content"><b><b><b> 
asdasdasdasd 
</b></b></b></div></div> 
</li> 
+1

S'il vous plaît montrer le résultat final HTML analysable, et non le code source Smarty. –

+0

Si vous regardez le code HTML généré, votre code JS semble-t-il correct? –

+0

"le résultat final HTML analysé" –

Répondre

1

Je pense que la classe loading_message est affiché et la bascule jquery se cacher. Essayez d'ajouter un rien d'affichage à cette div ou utiliser au lieu de

$("#settings_1041").toggle(); 

celui-ci:

$("#settings_1041").show(); 
+0

Nem jó így sem, már próbáltam így is. :(/ Cela ne fonctionne pas non plus, j'ai déjà essayé de cette façon aussi. :( –

+0

J'ai essayé avec votre code généré et cela a fonctionné après avoir ajouté un affichage: aucun style à la div "loading_message" [Kiprobaltam a generalt kododat es nalam mukodott rendesen miutan un "chargement_message" -es div-nek adtam egy "affichage: aucun" stilust.] – Zsolti