2010-12-13 34 views
2

Je développe un site Web en utilisant asp.net mvc et j'ai cette image qui déclenche un événement Ajax lorsqu'il est cliqué.Il fonctionne très bien sur FF et IE 7 & 8, mais sur IE 6 il n'appelle même pas la méthode sur le contrôleur (j'ai mis un point d'arrêt là-bas et l'ai lancé en mode debug pour vérifier) ​​Je suis dessus depuis quelques jours maintenant et je ne trouve pas de solution. :ajax de jQuery ne fonctionne pas sur IE6 :(

<img src="/Content/Images/img.png" onclick="HideAll(); GetMyVonparDiv(this); 
     $.ajax({ url: '/<%= Html.ViewContext.RouteData.Values["language"] %>/myvonpar/AddContent/?idContent=<%= ViewData.Model.id_content.ToString() %>&static=<%= ViewData.Model.is_static %>', 
     type: 'GET', 
     success: function (msg) { if (msg == 'True') { $(parentDiv).prev('.ok').show(); } else { $(parentDiv).show(); } }, 
     error: function (msg) { } 
    });" /> 

l'URL pour la méthode est générée correctement (/pt/myvonpar/AddContent/?idContent=258&static=False) et, comme je l'ai déjà dit, il fonctionne sur tous les autres navigateurs, mais IE6 :(


Edit: Le même code JS formaté pour une meilleure lisibilité:

HideAll(); 
GetMyVonparDiv(this); 

$.ajax({ 
    url: '/<%= Html.ViewContext.RouteData.Values["language"] %>/myvonpar/AddContent/?idContent=<%= ViewData.Model.id_content.ToString() %>&static=<%= ViewData.Model.is_static %>', 
    type: 'GET', 
    success: function (msg) { 
     if (msg == 'True') { 
      $(parentDiv).prev('.ok').show(); 
     } else { 
      $(parentDiv).show(); 
     } 
    }, 
    error: function (msg) { } 
}); 
+4

Il y a des moments où vous devez cesser de supporter un navigateur vieux de dix ans. – Chris

+4

Je n'ai jamais vu autant de code à l'intérieur de l'attribut onclick ... –

+2

@Chris IE6 est toujours bien dans les deux chiffres (> 10%). Peut-être dans un an ... –

Répondre

0

Essayez d'ajouter traditionnelle: true

2

j'ai rencontré un problème similaire et il est apparu que IE a été mise en cache le get question. voir this link here

+0

+1, cela m'est également très difficile.Même si la mise en cache n'est pas le problème, j'ai pris l'habitude de mettre en cache: false et ifModified: true. – jwiscarson