2011-06-23 6 views
-1

J'ai été troublé par les bogues IE9 ces derniers temps. J'ai cette fonctionJavascript ne fonctionne que dans Chrome et FireFox pas IE

 //return value in the admin/user select in url to get result via $_GET when page reloads 
     function toggleView() { 
     //parse url to remove all parameters other than ghost_id 
     var url = window.location.href.split("&")[0]; 
     var view_type = $("#toggle_view").val(); 
     //reload page with view type selected 
     window.location.href = url+"&view_type="+view_type;  
     } 

Qu'est-ce que cette fonction fait est la suppression des paramètres dans l'url, en les remplaçant par un nouveau paramètre et recharger la page donc mon php peut obtenir la nouvelle valeur par _GET $ quand il recharge.

Cela fonctionne parfaitement dans Firefox et Chrome mais dans IE9 la fonction javascript n'est même pas appelée. Je me demande s'il existe une autre façon de le faire dans jQuery ou un autre javascript pour résoudre le problème IE9.

+9

Si la fonction n'est pas appelée, nous devons voir le code dans lequel vous essayez de l'appeler. –

+0

mon argent est sur un ',' dans une définition de hachage quelque part ... – prodigitalson

+0

Ne voyant pas ce qui appelle cette fonction, je devine que l'événement que vous avez essayé d'appeler cette fonction ne fonctionne pas dans Internet Explorer. – timw4mail

Répondre

0

Si vous voulez vous débarrasser de tous les paramètres, vous devez diviser sur "?", Pas sur "&".

+0

"' // // // // // // // http://www.openbsd.org/faq/fr/faq.html "> parse url pour enlever tous les paramètres ** autre que ghost_id **' "- L'erreur ici suppose que' ghost_id' sera le premier paramètre. –

+0

Ah, vous avez raison, il y a une divergence dans la description et le commentaire. –

0

Généralement, en cas d'erreur, tout JavaScript est arrêté à ce stade.
Il se peut donc qu'il n'y ait aucun problème avec cette fonction et que vous ayez une erreur ailleurs dans votre code.

Questions connexes