Avatar billede uni-c Nybegynder
19. december 2003 - 15:55 Der er 6 kommentarer og
1 løsning

2 form scripts

dav..jeg leder efter 2 koder..

den ene kode skal checke om der et et vist antal bogsvater i et form felt, og hvis der ikke er skal der komme en alert op ..f.eks hvis minimum er sat til 50 bogstaver og der skrives en tekst i feltet og man klikker på submit, så skal der komme en alert op der skriver "din indlæg er for kort. det skal mindst fylde 50 bogstaver"...




den anden ting er:
på min side har jeg et forum og på det er der nogle funktioner ..så f.eks [red][/red] gør at det man skriver indenfor de to felter bliver skrevet i forummet med rød felt..

men hvis f.eks jeg allerede har skrevet en tekst fra start af, og gerne vil lave noget på linie 2 i rød skrift og smider kurseren deroppe og klikker påå den knap der indsætter koden [red] så ryger koden ned allersidst i formen..

kan man ikke gøre sådan så den tekst man markerer bliver udsat for den specielle kode??

jeg har set det før på snitz og phpbb forummer..


min kode til det andet scipt er..

<FORM METHOD="post" ACTION=spm.php?id=<?php echo $id; ?> name=navn>
<img src="kursiv.gif" alt="Kursiv Tekst" onClick="document.navn.svar.value += '[kur][/kur]'">
<img src="bold.gif" alt="Fed Tekst" onClick="document.navn.svar.value += '[strong][/strong]'">
<img src="underline.gif" alt=Understregning onClick="document.navn.svar.value += ''">
<img src="center.gif" alt="Centrer Tekst" onClick="document.navn.svar.value += '
'">
<img src="billed.gif" alt="Stor Billedfil" onClick="document.navn.svar.value += '[bigimg][/bigimg]'">
<img src="lilbilled.gif" alt="Lille Billedfil" width=18 height=18 onClick="document.navn.svar.value += '[lilimg][/lilimg]'">
<img src="line.gif" alt=Linie onClick="document.navn.svar.value += '[hr]'">


<select name="minSelect" onchange="this.form.svar.value+=this.options[this.selectedIndex].value">
<option value="">Farve</option>
<option value="[red][/red]">Rød</option>
<option value="[blue][/blue]">Blå</option>
<option value="[green][/green]">Grøn</option>
</select>
<select name="minSelect" onchange="this.form.svar.value+=this.options[this.selectedIndex].value">
<option value="">Tekststørrelse</option>
<option value="[1][/1]">1</option>
<option value="[2][/2]">2</option>
<option value="[3][/3]">3</option>
<option value="[4][/4]">4</option>





</select>

</select>
<a href=smiley.htm  onClick="NewWindow(this.href,'name','180','550','no');return false" ><img src="glad.gif" border=0" alt=Smileyliste></a>
<a href=help.htm  onClick="NewWindow(this.href,'name','350','400','no');return false"><img src="help.gif" border=0" alt=Hjælpeliste></a>



            <textarea name="svar" class="input" cols="50" rows="9"></textarea>
          </td>
        </tr>
        <tr>
          <td background=background2.jpg>&nbsp;</td>
          <td>
<input type="hidden" name="brugernavn" value="<?php echo $online; ?>">
<input type="hidden" name="kategori" value="<?php echo $debat[kategori]; ?>">
<input type="hidden" name="debattitel" value="<?php echo $debat[overskrift]; ?>">
<input type="hidden" name="brugernavn" value="<?php echo $online; ?>">
            <input type="submit" class="input" name="submit" value="Sæt ind">
        </form>
Avatar billede roenving Novice
19. december 2003 - 16:15 #1
Ikke optimalt, for indsætningspunktet forsvinder (feltet mister focus og knappen får den i stedet for !-), hvis der ikke er valgt nogen tekst, men ellers virker det ...

<script type="text/javascript">
function insCode(st,sl){
    if(insCode.arguments.length==1){
        del = st.indexOf('[',2);
        sl = st.substring(del);
        st = st.substring(0,del);
    }
    if(document.selection){
        var r = document.selection.createRange();
        if(r.text=="")
            document.navn.svar.value += st + sl;
        else
            r.text = st + r.text + sl;
    }else document.navn.svar.value += st + sl;
}
</script>

<FORM METHOD="post" ACTION="spm.php?id=<?php echo $id; ?>" name="navn" onsubmit="return this.svar.value.test(/.{50}/);">
<img src="kursiv.gif" alt="Kursiv Tekst" onClick="insCode('[kur]','[/kur]')">
<img src="bold.gif" alt="Fed Tekst" onClick="insCode('[strong]','[/strong]')">
<img src="underline.gif" alt=Understregning onClick="insCode('','')">
<img src="center.gif" alt="Centrer Tekst" onClick="insCode('
','
')">
<img src="billed.gif" alt="Stor Billedfil" onClick="insCode('[bigimg]','[/bigimg]')">
<img src="lilbilled.gif" alt="Lille Billedfil" width=18 height=18 onClick="insCode('[lilimg]','[/lilimg]')">
<img src="line.gif" alt=Linie onClick="insCode('','[hr]')">


<select name="minSelect" onchange="insCode(this.options[this.selectedIndex].value)">
<option value="">Farve</option>
<option value="[red][/red]">Rød</option>
<option value="[blue][/blue]">Blå</option>
<option value="[green][/green]">Grøn</option>
</select>
<select name="minSelect" onchange="insCode(this.options[this.selectedIndex].value)">
<option value="">Tekststørrelse</option>
<option value="[1][/1]">1</option>
<option value="[2][/2]">2</option>
<option value="[3][/3]">3</option>
<option value="[4][/4]">4</option>





</select>

</select>
<a href=smiley.htm  onClick="NewWindow(this.href,'name','180','550','no');return false" ><img src="glad.gif" border=0" alt=Smileyliste></a>
<a href=help.htm  onClick="NewWindow(this.href,'name','350','400','no');return false"><img src="help.gif" border=0" alt=Hjælpeliste></a>



            <textarea name="svar" class="input" cols="50" rows="9"></textarea>
          </td>
        </tr>
        <tr>
          <td background=background2.jpg>&nbsp;</td>
          <td>
<input type="hidden" name="brugernavn" value="<?php echo $online; ?>">
<input type="hidden" name="kategori" value="<?php echo $debat[kategori]; ?>">
<input type="hidden" name="debattitel" value="<?php echo $debat[overskrift]; ?>">
<input type="hidden" name="brugernavn" value="<?php echo $online; ?>">
            <input type="submit" class="input" name="submit" value="Sæt ind">
        </form>
Avatar billede uni-c Nybegynder
19. december 2003 - 16:44 #2
ja tak tusind tak det hjælper :D:D...

hvad med den anden kode? den som checker om et felt har ovetskrevet mminimum??
Avatar billede roenving Novice
19. december 2003 - 16:47 #3
Jeg har sådan set bare indbygget den i onsubmit, hvor den vil nægte at submitte, hvis der ikke er mindst 50 tegn ...

-- men jeg har da så tænkt på, at alle de koder vel ikke skal indgå i optællingen ?
Avatar billede roenving Novice
19. december 2003 - 17:04 #4
function testLen(f){
    var val = f.svar.value;
    l = 0;
    val = val.split("[");
    l += val[0].length;
    for(i=1;val.length>i;i++){
        t = val[i].split("]");
        l += t[1].length;
    }
    if(50>l){
        alert("Dit indlæg er for kort.\nDet skal mindst fylde 50 bogstaver.");
        return false;
    }else return true;
}

-- og:

<FORM METHOD="post" ACTION="spm.php?id=<?php echo $id; ?>" name="navn" onsubmit="return testLen(this);">
Avatar billede uni-c Nybegynder
19. december 2003 - 17:54 #5
ok tak for hjælpen..toede ellers det var noget mega svært noget :)..


lav et svar så du en skat :)
Avatar billede roenving Novice
19. december 2003 - 17:56 #6
Jeg tester i det ovenstående for karakterer, hvilket vil sige, at mellemrum, punktummer m.v. tæller med, den er lidt mere besværlig, hvis ikke de må tælle med !-)

-- velbekomme '-)
Avatar billede roenving Novice
20. december 2003 - 11:40 #7
-- og tak for points ;~}
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