[AJAX] Inner html uit de request?

Pagina: 1
Acties:
  • 198 views sinds 30-01-2008
  • Reageer

  • NS_5
  • Registratie: Februari 2005
  • Laatst online: 18-12-2024
Ik zit dus met een probleempje,

Ik haal d.m.v. Ajax een pagina op daar staat in een tabel netjes de gegevens die ik wil hebben.
Onderaan de tabel staat hidden een vakje met hoeveel rijen de er uit de mysql database gekomen zijn.
En dat getal wil ik gebruiken op de pagina waar de request vandaan kwam.
Het vakje waar de resultaten in staan heet 'total'. Met innerHTML zou je dat uit kunnen lezen.
Maar, hoe doe ik dat dan want het is request. je kan dus niet zoiets doen van:
JavaScript:
1
2
3
4
5
/* ajax dingetjes */
alert(returned.GetElementById('total').InnerHTML);
/* dan krijg jezoiets als GetElementById is geen functie. 
huh denk ik dan?
*/

Nou snap ik wel wat javascript bedoeld maar hoe kan ik dat oplossen?
Ik kan er nergens iets goeds vinden want google snapt niet wat ik bedoel ;).
Google kijkt alleen naar de keywords :) als julie snappen wat ik bedoel.
Dus als ik bij google inklop 'Ajax getelementbyid innerhtml'
Krijg ik allemaal tutorials natuurlijk :z .

  • sjhgvr
  • Registratie: Januari 2004
  • Laatst online: 07:42
Javascript de rijen laten tellen?

oisd.nl


  • SchizoDuckie
  • Registratie: April 2001
  • Laatst online: 18-02 23:12

SchizoDuckie

Kwaak

ten eerste, innerHTML begint met een kleine I, in je sample begin je met een hoofdletter, maar dat kan een typo zijn.

ten tweede, wat stuur je terug? XML? HTML? JSON? Mijn glazen bol zegt zo even niet wat er uit komt, maar als ik even gok op XML en zoek op [google=ajax xml getelementbyid innerhtml] kom ik hier uit wat volgens mij exact jouw probleem tot in de puntjes uitlegt :)

Stop uploading passwords to Github!


Verwijderd

Het is pas innerHTML zodra je de respons in je pagina gooit. Tot die tijd is het een string (Request.responseText) of een XML-document (Request.responseXML). In alle gevallen moet je de waarde die je zoekt anders uitlezen.

Verwijderd

en GetElementById moet zijn getElementById

  • NS_5
  • Registratie: Februari 2005
  • Laatst online: 18-12-2024
Verwijderd schreef op woensdag 20 december 2006 @ 18:22:
Het is pas innerHTML zodra je de respons in je pagina gooit. Tot die tijd is het een string (Request.responseText) of een XML-document (Request.responseXML). In alle gevallen moet je de waarde die je zoekt anders uitlezen.
Blues ik denk dat jij het best onder woorden brengt wat javascript mij ook probeert uit te leggen.
Maar hoe maak ik de string dan een ander formaat. Een object maken, daar de string in stoppen en dan in de volgende stap de innerHTML van dat object uitlezen?

[ Voor 3% gewijzigd door NS_5 op 20-12-2006 20:17 ]


Verwijderd

Heb je het totaal nodig nadat de request in de site gezet is of er voor? In het eerste geval kun je natuurlijk gewoon het html element aanroepen met document.getElementById() ?

Wat wil je nu precies doen?

  • NS_5
  • Registratie: Februari 2005
  • Laatst online: 18-12-2024
OK ander voorbeeld:
Er staat op de pagina die ik opvraag d.m.v. ajax een stukje text in een divje. Het divje heet 'g101'.
De request komt als variabel 'request' terug. Ik wil het volgende kunnen uitlezen:

request.getElementById('g101').innerHTML

Maar dat kan niet want het is een string.
mijn vraag is dus: Hoe kan de innerHTML van 'g101' uitlezen?

[ Voor 6% gewijzigd door NS_5 op 20-12-2006 20:57 ]


Verwijderd

Als het geen XML response is dan kun je er misschien wat vreemde tekens omheen zetten en 'm eruit reg-exen?

  • NS_5
  • Registratie: Februari 2005
  • Laatst online: 18-12-2024
Verwijderd schreef op woensdag 20 december 2006 @ 21:15:
Als het geen XML response is dan kun je er misschien wat vreemde tekens omheen zetten en 'm eruit reg-exen?
Wat bedoel je daar precies mee?

  • Clay
  • Registratie: Oktober 1999
  • Laatst online: 14-11 16:23

Clay

cookie erbij?

Ik geloof dat IE je altijd wel de responseXML laat checken, ook al is het geen xml. In firefox (en ik weet ff verder niet in welke andere fatsoenlijke browsers) kan je de xmlhttp.overrideMimeType('text/xml') ertegenaan gooien om ook bij de responseXML te kunnen. In de praktijk lijkt me dit overigens vrij krakkemikkig, maar het is een optie :P Ik stop html meestal gewoon in een cdata eilandje in xml.

Instagram | Flickr | "Let my music become battle cries" - Frédéric Chopin


  • sjhgvr
  • Registratie: Januari 2004
  • Laatst online: 07:42
NS_5 schreef op woensdag 20 december 2006 @ 20:56:
mijn vraag is dus: Hoe kan de innerHTML van 'g101' uitlezen?
code:
1
var content = getElementById('g101').innerHTML

oisd.nl


  • Crayne
  • Registratie: Januari 2002
  • Laatst online: 17-03 13:41

Crayne

Have face, will travel

DaPi schreef op donderdag 21 december 2006 @ 12:46:
[...]

code:
1
var content = getElementById('g101').innerHTML
Dat zou werken als hij objecten terugkreeg, ja. Helaas krijgt hij een string terug, dus dat wordt inderdaad gewoon een regular expression loslaten.

Ik haal bijvoorbeeld voor een Greasemonkey script de users op je ignorelist op door een xmlHttp call te doen naar de betreffende pagina en uit de responseText de juiste namen te filteren met een regexp. Als er een manier is om de responseText als een DOM te kunnen parsen, hoor ik het ook graag, want dat zou me een hoop werk schelen. ;)

[ Voor 34% gewijzigd door Crayne op 21-12-2006 12:57 ]

Mijn Library Thing catalogus


  • StevenK
  • Registratie: Februari 2001
  • Nu online
Crayne schreef op donderdag 21 december 2006 @ 12:54:
[...]


Dat zou werken als hij objecten terugkreeg, ja. Helaas krijgt hij een string terug, dus dat wordt inderdaad gewoon een regular expression loslaten.

Ik haal bijvoorbeeld voor een Greasemonkey script de users op je ignorelist op door een xmlHttp call te doen naar de betreffende pagina en uit de responseText de juiste namen te filteren met een regexp. Als er een manier is om de responseText als een DOM te kunnen parsen, hoor ik het ook graag, want dat zou me een hoop werk schelen. ;)
En daarmee geef je al aan wat de oplossing is: response in XML. Want het versturen van extra gegevens in een responseText en die daarna weer uit gaan spitten lijkt me weinig zinvol.

Was advocaat maar vindt het juridische nog steeds leuk


  • Crayne
  • Registratie: Januari 2002
  • Laatst online: 17-03 13:41

Crayne

Have face, will travel

Edit: je kunt voor zover ik weet responseXML niet gebruiken met een response object met content type 'text/html'.

Maar laten we ontopic blijven.

[ Voor 157% gewijzigd door Crayne op 21-12-2006 14:02 ]

Mijn Library Thing catalogus

Pagina: 1