Avatar billede jannikf Nybegynder
15. oktober 2007 - 20:10 Der er 18 kommentarer og
2 løsninger

Dojo Editor; request hvad?

I forbindelse med at Dojo Editoren indeholder lige præcis det jeg mangler har jeg besluttet at bruge den. Det eneste jeg dog mangler er at vide hvordan jeg overfører den skrevne tekst i editoren.

Som det er nu omdanner Dojo et div layer til editoren, men hvordan får jeg denne ind i en <form>?:
<div class="dojo-Editor">
Tekst her..
</div>


I kan se en test af det her:
http://web.dreem.eu/admin/test.asp

Sådan kalder jeg editoren:

<script type="text/javascript" src="js/dojo.js"></script>
<script language="javaScript" type="text/javascript">
        dojo.require("dojo.fx.*");
        dojo.require("dojo.widget.Editor");

        var built = false;
        function buildEditor(){
            if(built){
                return;
                // built.onClose(false, true);
            }
            var groups = [];
            var ob = document.getElementById("outerbar");
            var eb = document.getElementById("scriptEditorBlock");
            var inputs = ob.getElementsByTagName("input");
            for(var x=0; x<inputs.length; x++){
                if((inputs[x].type == "checkbox")&&(inputs[x].checked)){
                    groups.push(inputs[x].name);
                    groups.push("|");
                }
            }
            if(groups.length){
                groups.pop();
            }
           
            built = dojo.widget.fromScript("Editor", { items: groups }, eb);
            dojo.fx.wipeOut(ob, 750);
        }
</script>
Avatar billede olebole Juniormester
15. oktober 2007 - 21:37 #1
<ole>

For at svare på det, skal man tilfældigt kende den pågældende editor :)

/mvh
</bole>
Avatar billede w13 Novice
15. oktober 2007 - 21:47 #2
Jeg ville nok lægge en onsubmit på din form:

onsubmit="document.getElementById('dit-formtekstfelt').value=document.getElementById('editorens-divs-id').innerHTML"
Avatar billede jannikf Nybegynder
15. oktober 2007 - 21:49 #3
w13:

Hvor skal det placeres? I <form action="bla.asp" onsubmit="... eller i headeren som en del af javascriptet?
Avatar billede jannikf Nybegynder
15. oktober 2007 - 21:53 #4
olebole:

Ja det er jeg klar over, men eftersom dojotoolkit.org ser ud til at være temmelig omfattende, så tænkte jeg at chancerne var ok.
Avatar billede w13 Novice
15. oktober 2007 - 22:00 #5
Jep, i formen, som du først skrev.

<form action="bla.asp" onsubmit="minkode">

Pointen er så, at der ved submit overføres fra div-elementet til et (skjult) form-element, du kan hente indhold fra på næste side.
Avatar billede jannikf Nybegynder
15. oktober 2007 - 23:06 #6
Det ser ikke du til at virke..

<form action="request.asp" onsubmit="document.getElementById('frmText').value=document.getElementById('editor').innerHTML">
<div class="dojo-Editor" id="editor">
Tekst her
</div>
<input type="submit">

og så Response.Write request.form("frmText") ved request.asp
Avatar billede w13 Novice
16. oktober 2007 - 04:05 #7
Hvor er elementet frmText?

Du skal have en:

<input type="hidden" style="display:none" name="frmText">
Avatar billede jannikf Nybegynder
16. oktober 2007 - 06:50 #8
<form action="request.asp" method="post" onsubmit="document.getElementById('frmText').value=document.getElementById('editor').innerHTML">
    <div class="dojo-Editor" id="editor">
        <p>
        Tekst her.
        </p>
    </div>
    <input type="hidden" style="display:none" name="frmText">
    <input type="submit">
</form>

Det virker stadig ikke.
Avatar billede olebole Juniormester
16. oktober 2007 - 10:19 #9
Slet style="display:none"
Avatar billede olebole Juniormester
16. oktober 2007 - 10:22 #10
- og sæt en id på elementet:
    <input type="hidden" name="frmText" id="frmText">
Avatar billede w13 Novice
16. oktober 2007 - 13:22 #11
Ja. Wups.
Avatar billede jannikf Nybegynder
16. oktober 2007 - 19:13 #12
Tak for hjælpen indtil videre, men det virker ikke så snart jeg sætter class="dojo-Editor".

Hvordan kan man lave en editor uden at fortælle hvordan indholdes kan requestes?
Avatar billede w13 Novice
16. oktober 2007 - 19:26 #13
Hvad? Virker det ikke?

Retter du også onsubmit til:

onsubmit="document.getElementById('frmText').value=document.getElementById('dojo-Editor').innerHTML">

Til dit sidste spørgsmål: det kan man ikke. Det kan dog være at programmøren har gjort det for dig, men det skal være kodet ind.
Avatar billede w13 Novice
16. oktober 2007 - 19:26 #14
Nå nej, nevermind den rettelse, jeg så forkert..
Avatar billede w13 Novice
16. oktober 2007 - 19:27 #15
Virker det uden den class?

Du må skrive class'en her, hvis vi skal finde fejlen i den. Ellers er det så meget sværere.
Avatar billede jannikf Nybegynder
16. oktober 2007 - 19:32 #16
Jeg har fundet en anden løsning. TinyMCE som blot benytter en textarea og er derfor lige til at gå til. Jeg har dog et nyt spørgsmål omkring brugen af ajax i editoren, så det opretter jeg lige.

Jeg takker for hjælpen, på trods af at problemet ikke blev løst. Bare indryk svar, så i kan få point for jeres hjælp.
Avatar billede w13 Novice
16. oktober 2007 - 19:41 #17
Ok.
Avatar billede olebole Juniormester
16. oktober 2007 - 19:44 #18
Tro mig: har du problemer med det her, er AJAX laaaaaangt over dit niveau  :)
Avatar billede jannikf Nybegynder
16. oktober 2007 - 19:51 #19
Jeg har skam fået Ajax til at fungere med f.eks. editinplace og livesearch. Det kræver bare lidt tid for mig at forstå det, men det med editoren burde ikke være så svært. Der er lavet en funktion til det, jeg ved bare ikke lige hvad jeg skal skrive i det.
Avatar billede olebole Juniormester
16. oktober 2007 - 20:05 #20
- nuvel ... de fleste af de, der skriver web-tutorials om AJAX - og ikke mindst de, der har skrevet de mest kendte/anvendte AJAX-libs - tror såmænd også, de har prøvet at skrive AJAX, uden det på nogen måde er tilfældet.
Således har jeg endnu tilgode at se en livesearch-tutorial, der ikke baserer sig på dårlig, invalid og/eller dybt forældet kode  :)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester