jquery .get nedělá požadavku XHR!

hlasů
2

Právě jsem vstoupil do světa jQuery a docela nový javascript too.I mít malý fragment JavaScriptu, jako níže: -

<script type=text/javascript>
 $(function(){
    $('a').click(function(event){
        event.preventDefault();
        $.get('/_add_navigation_',function(response){
        $('#themaincontents').html(response);
        })
   })
</script>

Html vypadá níže: -

 <a href=?toaddnavigation>CLICK Me</a>
 <div id=themaincontents></div>

Na straně serveru já šek má záhlaví XHR by něco podobného

 if request.is_xhr: send response else:redirect somewhere

Nyní, když tento kód funguje na chrom a operu, Firefox se chová trochu divně. Server neodešle zpět Jejich odpověď spíše ano přesměrování. To znamená, že říká, že neexistuje žádná hlavička XHR. Proč by se to stalo, zatímco na ostatních dvou prohlížečů, že je v pořádku. (Já používám Firefox 3.6.12) Aktualizace-Just se podíval na žádost záhlaví Firefox a najdu NO x-Požadované-S: hlavičku XMLHttpRequest, ale je přítomna v chromu)

Položena 16/11/2010 v 21:18
zdroj uživatelem
V jiných jazycích...                            


1 odpovědí

hlasů
0

Ne všechny prohlížeče posílat stejné hlavičky, a nelze se na ně spolehnout, aby byly konzistentní napříč prohlížeči. Nejjednodušší způsob, jak se na to spoléhat na prohlížeč, aby něco poslat, ale ručně poslat něco sami:

$.get('url', {
    xhr: 'yes' // add this extra parameter here
}, function(){

});

pak zkontrolujte, které se dostanou proměnné na serveru namísto záhlaví, které mohou nebo nemusí být zaslána prostřednictvím webového prohlížeče.

Odpovězeno 16/11/2010 v 21:40
zdroj uživatelem

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more