php.de

Zurück   php.de > Webentwicklung > JavaScript, Ajax und mehr

JavaScript, Ajax und mehr dynamisches Scripten und Interaktion auf Clientebene

Antwort
 
LinkBack Themen-Optionen Thema bewerten
Alt 05.04.2011, 15:09  
Erfahrener Benutzer
 
Registriert seit: 15.04.2004
Beiträge: 126
pcschröda
Standard IE, jQuery's find() und eine AJAX response

Hallo,

Mit jQuery's find() Methode sollte es möglich sein, eine AJAX-Antwort auf ein bestimmtes Element zu durchsuchen.

Dies funktioniert problemlos in allen Browsern, bis auf den IE. Recherche im Netz scheint nahezulegen, den MIME-Type in der Antwort mitzuliefern - leider bei mir erstmal ohne Erfolg. Die response enthält übrigens einfach HTML, was soweit auch im IE funktioniert:

Code:
            $.ajax({
                type: 'POST',
                url: url,
                data: data,
                dataType: ($.browser.msie) ? "text" : "html",
                success: function(response) {
// Bis hierhin kein Problem

                        var page_id   = $(response).find( 'span.do_page_id' ).attr('id');
// Hier steigt der IE aus
                        alert(page_id);
                }

            });


Kennt jemand Abhilfe?


Beste Grüße,

pcschröda
pcschröda ist offline   Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 05.04.2011, 15:45  
moderatives Dielektrikum
 
Benutzerbild von nikosch
 
Registriert seit: 21.05.2008
Beiträge: 35.987
PHP-Kenntnisse:
Fortgeschritten
nikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunft
Standard

Dann wage ich mal die unbequemen Fragen zu stellen:

Zitat:
Die response enthält übrigens einfach HTML
Warum, wenn mit JS gearbeitet werden soll?!

Zitat:
dataType: ($.browser.msie) ? "text" : "html",
Warum lieferst Du an IE „text“, wenn Du gerade damit Problem zu haben scheinst?

Zitat:
// Bis hierhin kein Problem
Woher willst Du das wissen?
Zitat:
// Hier steigt der IE aus
was soll das heißen?
__________________
--
One pixel is still too big. Please make it smaller. ASAP.

Initiative Mittelstand.
Die wichtigste Gestaltungsregel im Screendesign ist Pi mal Daumen des Arbeitgebers.
--
nikosch ist offline   Mit Zitat antworten
Alt 05.04.2011, 16:32  
Erfahrener Benutzer
 
Benutzerbild von tr0y
 
Registriert seit: 26.07.2010
Beiträge: 4.865
PHP-Kenntnisse:
Fortgeschritten
tr0y ist ein wunderbarer Anblicktr0y ist ein wunderbarer Anblicktr0y ist ein wunderbarer Anblicktr0y ist ein wunderbarer Anblicktr0y ist ein wunderbarer Anblicktr0y ist ein wunderbarer Anblicktr0y ist ein wunderbarer Anblicktr0y ist ein wunderbarer Anblick
tr0y eine Nachricht über MSN schicken
Standard

Ich benutz zwar selten jQuery, allerdings hinkt da etwas die Logik bei deinem Source:

Wenn du den Response-Typ auf text umstellst um danach mit einem HTML-Tool im DOM dieses Textes rumzusuchen kann das rein Logisch nicht gehen da jquery hoffentlich nur bei dem html-Typ ein DOM-Object erzeugt. Text ist plain-text, keine Anwendung ( außer encoding ) irgendwelcher Tools ( wie den DOM-Erzeuger ). das find() nur auf DOM-Objects angewendet werden kann sollte ja irgendwo selbstredend in der Docu nachgelesen werden können
__________________
Lasse mir ohne Anwendung von Gewalt Dinge schenken, Amazon weiß darüber bald mehr.
tr0y ist offline   Mit Zitat antworten
Alt 05.04.2011, 16:39  
Erfahrener Benutzer
 
Registriert seit: 15.04.2004
Beiträge: 126
pcschröda
Standard

Zitat:
Zitat von nikosch Beitrag anzeigen
Warum, wenn mit JS gearbeitet werden soll?!
Hast Recht, JSON wäre besser.

Das ganze Problem scheint von einem einzelnen </div> herzurühren, dessen "Gegenstück" bei der AJAX-Abfrage nicht mitgeladen wird, da es sich im Header-Bereich befindet, und dieser zu den nicht-aktualisierten Teilen der Seite zählt.


Zitat:
Warum lieferst Du an IE „text“, wenn Du gerade damit Problem zu haben scheinst?
Nichts weiter als ein fruchtloser Versuch, direkt aus der jQuery API

Zitat:
Woher willst Du das wissen?
Ja, das stimmt. Das Problem ist das invalide HTML der Rückgabe. Da ich bestimmt nicht der Erste bin, der vor dem Problem steht, werde ich hoffentlich eine Lösung dazu finden.


Beste Grüße,

pcschröda
pcschröda ist offline   Mit Zitat antworten
Alt 05.04.2011, 16:44  
Moderator¹
 
Registriert seit: 28.03.2010
Beiträge: 7.470
PHP-Kenntnisse:
Fortgeschritten
ChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer Anblick
Standard

Du kannst HTML-Elemente nicht „teilweise“ aktualisieren, indem du Start- und End-Tag in verschiedene Dokumente packst - zumindest ergibt es überhaupt keinen Sinn, darauf einen DOM-Parser loslassen zu wollen.

Zitat:
Das Problem ist das invalide HTML der Rückgabe. Da ich bestimmt nicht der Erste bin, der vor dem Problem steht, werde ich hoffentlich eine Lösung dazu finden.
Ganz einfach: Mach valides HTML draus, wenn du es mit einem DOM-Parser verarbeiten lassen willst.
__________________
RGB is totally confusing - I mean, at least #C0FFEE should be brown, right?
ChrisB ist offline   Mit Zitat antworten
Alt 05.04.2011, 16:45  
Erfahrener Benutzer
 
Registriert seit: 15.04.2004
Beiträge: 126
pcschröda
Standard

Zitat:
Zitat von tr0y Beitrag anzeigen
Ich benutz zwar selten jQuery, allerdings hinkt da etwas die Logik bei deinem Source:
Was hat IE mit Logik zu tun? Aber im Ernst: Deine Argumentation ist zutreffend, allerdings liegt das Problem am HTML selber, wie oben beschrieben.


Beste Grüße,

pcschröda
pcschröda ist offline   Mit Zitat antworten
Alt 05.04.2011, 16:49  
Erfahrener Benutzer
 
Benutzerbild von tr0y
 
Registriert seit: 26.07.2010
Beiträge: 4.865
PHP-Kenntnisse:
Fortgeschritten
tr0y ist ein wunderbarer Anblicktr0y ist ein wunderbarer Anblicktr0y ist ein wunderbarer Anblicktr0y ist ein wunderbarer Anblicktr0y ist ein wunderbarer Anblicktr0y ist ein wunderbarer Anblicktr0y ist ein wunderbarer Anblicktr0y ist ein wunderbarer Anblick
tr0y eine Nachricht über MSN schicken
Standard

Ist doch logisch das im IE nix funktioniert !
__________________
Lasse mir ohne Anwendung von Gewalt Dinge schenken, Amazon weiß darüber bald mehr.
tr0y ist offline   Mit Zitat antworten
Alt 05.04.2011, 16:50  
Moderator¹
 
Registriert seit: 28.03.2010
Beiträge: 7.470
PHP-Kenntnisse:
Fortgeschritten
ChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer AnblickChrisB ist ein wunderbarer Anblick
Standard

Zitat:
Zitat von pcschröda Beitrag anzeigen
Was hat IE mit Logik zu tun?
Du solltest nicht auf den IE schimpfen, wenn du selber vollkommen unlogischen Quark fabrizierst beim Versuch ein Problem zu lösen, dessen Ursache ganz woanders liegt.
__________________
RGB is totally confusing - I mean, at least #C0FFEE should be brown, right?
ChrisB ist offline   Mit Zitat antworten
Alt 05.04.2011, 16:52  
Erfahrener Benutzer
 
Registriert seit: 15.04.2004
Beiträge: 126
pcschröda
Standard

Zitat:
Zitat von ChrisB Beitrag anzeigen
Ganz einfach: Mach valides HTML draus, wenn du es mit einem DOM-Parser verarbeiten lassen willst.
Mir geht gerade ein Lichtlein auf - und eine schlechte Angewohnheit verschwindet schreiend in der Abyss.


Beste Grüße,

pcschröda
pcschröda ist offline   Mit Zitat antworten
Antwort


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Fileupload via AJAX GSJLink HTML, Usability und Barrierefreiheit 13 17.05.2012 21:41
[Erledigt] AJAX basierter Iterator mbunge Software-Design 5 05.04.2011 14:45
[Erledigt] Ajax Response mit Smarty 3logy PHP Einsteiger 10 04.03.2011 16:13
Ajax Anwendung, reines Ajax oder Ajax und Html jackie1983 JavaScript, Ajax und mehr 5 09.02.2010 16:50
AJAX - Variable von PhP erhalten auf möglichst simple Weise? SplitterWind JavaScript, Ajax und mehr 10 10.01.2010 04:34
[Erledigt] Ajax response in variable Buschdieb JavaScript, Ajax und mehr 13 22.11.2009 12:33
Wie lade ich ein Javascript nach einer AJAX Abfrage neu? da.eXecutoR JavaScript, Ajax und mehr 3 21.09.2009 11:15
[Erledigt] AJAX interpretRequest läuft nur mit alert() Buschdieb JavaScript, Ajax und mehr 14 26.08.2009 14:04
Ajax und include reloaden choice JavaScript, Ajax und mehr 6 10.07.2009 13:47
1111: AJAX meets PHP (indirectly) Nikolaus 2.0 Adventskalender 2008 5 15.12.2008 11:00
[Erledigt] Verliere Zuordung in einer JS Klasse tomtaz JavaScript, Ajax und mehr 2 08.12.2008 21:55
Probleme mit Sonderzeichen bei Ajax (prototype)... go1denboy JavaScript, Ajax und mehr 1 31.08.2008 18:44
AJAX Response: Firebug gibt Alert aus Curanai HTML, Usability und Barrierefreiheit 1 20.01.2008 20:38
AJAX: Session-Inhalt an PHP Curanai HTML, Usability und Barrierefreiheit 2 05.11.2007 15:45
Ajax und Sonderzeichen? GSJLink HTML, Usability und Barrierefreiheit 1 11.11.2006 14:36

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
response problem in ie, ajaxresponse find, response html dom ie8 jquery ajax, ajax $().find, jquery .find ie, internet explorer ajax fehler php response wird nicht richtig verarbeitet, ajax .html(data) ie, response.php, .find() ajax, ajax rückgabe als dom parsen, jquery ajax xhtml response ie, ajax data type mime type, ajax response mime type ie9, ajax response html, ajax_response smarty, php ajax response

Alle Zeitangaben in WEZ +2. Es ist jetzt 09:37 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum