Problema nel portare la variabile Javascript sul valore di input nascosto
-
03-07-2019 - |
Domanda
Sto cercando di creare un sistema in cui è possibile trascinare e ridimensionare div (jquery ui) e quindi salvare le posizioni e le dimensioni in un file CSS.
Ho già fatto funzionare il sistema con un div, ma ora che ho provato ad aggiornare il sistema per supportare più div, ho riscontrato un problema.
La fonte: http://ezmundorf.110mb.com/problem.txt ( È brutto, ma sto praticamente provando come funzionano le cose).
Quando faccio clic sul div #update la pagina diventa vuota e l'origine per la pagina è solo il tag iniziale del modulo. La pagina sta provando a fare qualcosa poiché firefox sta visualizzando l'immagine di caricamento.
Se rimuovo la riga che scrive i campi di input nascosti, vedo il pulsante Salva, ma c'è ancora qualcosa che non va nel javascript poiché il browser continua a fare qualcosa.
Mi dispiace per aver pubblicato un tale "aggiustami questo codice" " domanda qui, ma non so come spiegarlo senza tutto il codice e non sono riuscito a trovare risposta da nessuna parte.
Soluzione
Non puoi usare document.write
dopo che la pagina ha terminato il caricamento senza che sovrascriva l'intera pagina, come stai vedendo.
Dovresti usare .innerHTML
su alcuni container, ad esempio:
$('myDiv').innerHTML = '<form>...</form>';
o usa i metodi DOM:
var form = document.createElement('form');
var body = document.getElementsByTagName('body')[0];
body.appendChild('form');
Altri suggerimenti
Non puoi utilizzare document.write al termine del caricamento della pagina (ad es. in un gestore eventi, incluso $ (document) .ready
). Invece, puoi usare il metodo jQuery .html (val)
per modificare il contenuto di un elemento esistente o inserire nuovi elementi nel DOM con l'altro manipolazione jQuery metodi.