PDA

View Full Version : [Javascript]Dubbio


Mattyfog
11-12-2010, 18:35
Salve a tutti!
Volevo chiedervi: ma può essere che il browser, in questo caso firefox, modifichi da solo il codice html magari per correggere errori o presunti "errori" e quindi che io quando passo del codice html a una funzione esso sia stato modificato?

misterx
11-12-2010, 21:16
se funziona veramente avrebbero risolto tutti i problemi dei bachi nel software

wingman87
12-12-2010, 18:48
A volte firefox corregge il codice html. L'unico esempio che mi viene in mente è che quando c'è un tag <table>, al suo interno, se non è presente, aggiunge il tag <tbody> e all'interno tutte le righe.
Nel tuo caso però non è chiaro quello che hai fatto, nel senso che non ho capito se il codice html passato alla funzione è preso dalla pagina corrente (e quindi firefox potrebbe averlo modificato) o l'hai creato sul momento.

Mattyfog
16-12-2010, 18:17
A volte firefox corregge il codice html. L'unico esempio che mi viene in mente è che quando c'è un tag <table>, al suo interno, se non è presente, aggiunge il tag <tbody> e all'interno tutte le righe.
Nel tuo caso però non è chiaro quello che hai fatto, nel senso che non ho capito se il codice html passato alla funzione è preso dalla pagina corrente (e quindi firefox potrebbe averlo modificato) o l'hai creato sul momento.

Il codice sarebbe proprio preso dalla pagina corrente.

Mattyfog
16-12-2010, 18:33
Parebbe che firefox (con gli altri browser non ho ancora provato) mi cancelli la chiusura di alcuni tag per non so quale motivo! Così dopo, eseguendo un parser xml di parte del codice html della pagina ho errori!
Più precisamente cancella la chiusura di quei tag che non hanno figli!

Mattyfog
17-12-2010, 16:11
Need help

MEMon
17-12-2010, 19:47
Need help
Posta del codice

Mattyfog
17-12-2010, 22:23
Ho proprio provato a stampare con un alert del codice html prelevato da un pagina: fra firefox e IE vi era una differenza: firefox aveva alcuni tag aperti, IE no :(

MEMon
18-12-2010, 11:18
Ho proprio provato a stampare con un alert del codice html prelevato da un pagina: fra firefox e IE vi era una differenza: firefox aveva alcuni tag aperti, IE no :(

Come lo prelevi questo codice?

Mattyfog
18-12-2010, 11:41
Con document.getElementById(id)

MEMon
18-12-2010, 11:42
Con document.getElementById(id)

E cosa stampi? innerHTML, outerHTML cosa?

Mattyfog
18-12-2010, 17:03
innerHTML

Mattyfog
19-12-2010, 11:06
Potrebbe essere un problema?
Se no potrei lavorare parallelamente sia sul codice della pagina e sia su un codice salvato in una variabile.
Ma a questo punto come usare una stringa contenente il codice html al posto di documenti in document.getElementById(id) ?

MEMon
19-12-2010, 11:59
Potrebbe essere un problema?
Se no potrei lavorare parallelamente sia sul codice della pagina e sia su un codice salvato in una variabile.
Ma a questo punto come usare una stringa contenente il codice html al posto di documenti in document.getElementById(id) ?
Devi postare del codice, metti qui un esempio che possiamo provare perchè secondo me stai sbagliando qualcosa.

Mattyfog
19-12-2010, 15:16
Il codice javascript è questo:
<script>function save() { $.post("http://127.0.0.1:8080/Mattyfog%20CMS/modules/menu/admin/save.php", { menu_xhtml: document.getElementById("menu_xhtml").innerHTML }, function(data){ alert("Data Loaded: " + data); } ); } </script>
Il codice della pagina save.php non fa altro che visualizzare il codice che gli viene passato, ed è grazie a questa visualizzazione che noto che il codice ha alcuni tag non chiusi (ma che in realtà lo sarebbero):

<?php
echo $_POST['menu_xhtml'];
?>

MEMon
19-12-2010, 15:39
Il codice javascript è questo:
<script>function save() { $.post("http://127.0.0.1:8080/Mattyfog%20CMS/modules/menu/admin/save.php", { menu_xhtml: document.getElementById("menu_xhtml").innerHTML }, function(data){ alert("Data Loaded: " + data); } ); } </script>
Il codice della pagina save.php non fa altro che visualizzare il codice che gli viene passato, ed è grazie a questa visualizzazione che noto che il codice ha alcuni tag non chiusi (ma che in realtà lo sarebbero):

<?php
echo $_POST['menu_xhtml'];
?>

Non capisco se lo stai facendo apposta, ti costa molto mettere il codice html che stai testando? Così possiamo provare?

Ho capito che fai un getElement, fin lì ci sono arrivato, e lo riesco a scrivere anche a manina, mi interessava sapere su quale codice HTML stai riscontrando il problema.

Altrimenti se ti aspetti una risposta, si-no-forse, allora la mia risposta, SI ti lascia i tag aperti(visto che lo stai dicendo tu), NO non mi è mai capitato, FORSE stai sbagliando qualcosa.

Poi, sei davvero sicuro che il problema si javascript, cioè il codice ti risulta sbagliato già da subito, o solo quando ti torna indietro? Sarà una domanda stupida ma visto che hai postato del codice ajax, forse volevi farci intendere che l'errore ce l'hai con QUEL codice.

MEMon
19-12-2010, 15:50
Mi sono accorto che chiami il menu "menu_xhtml", non è che uso un doctype xhmtl?

Posta il doctype della tua pagina.

Mattyfog
24-12-2010, 14:46
La pagina dovrebbe essere xhtml 1.1 .
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
Codice html della pagina in allegato.