Avatar billede flashn00b Nybegynder
17. juni 2005 - 22:04 Der er 4 kommentarer

Hvorfor vil den ikke sætte timeout?

Hejsa, jeg er igang med et script.
Jeg vil have den tekst frem man skriv i input feltet.

Jeg har lavet dette:
(    SPØRGSMÅL STÅR NEDERST ;)    )

<SCRIPT type="text/javascript">
function Clear(){
parent.andet.location = 'ikkeaktiv.php';
parent.chat.document.getElementById('textGoesHereTable').style.visibility = 'hidden';
parent.chat.document.getElementById('textGoesHere').style.visibility = 'hidden';
}
function bubble(f){
var tekst = f.besked.value.replace(/<\/?[a-z].*?>/ig, "").substring(0, 70);
parent.system.document.getElementById('js').src = 'skriv.php?besked=' +tekst;
parent.chat.document.getElementById('textGoesHereTable').style.visibility='visible';
parent.chat.document.getElementById('textGoesHere').innerHTML = tekst;
return ok;
}
function ok(){
setTimeout("Clear()", 10000);
}
</script>

Også har jeg selve formen:

<form action="?skriv=ok" name="lolz" id="lolz" method="post" onSubmit="bubble(this)">
<input type="text" name="besked">
</form>

Problemet er at når man trykker på ENTER vil den ikke (efter 10 sekunder) fjerne teksten.

Kan det gøres på en anden måde?
Kun i denne fil, vil ikke til og ødelægge det andet.
Avatar billede flashn00b Nybegynder
17. juni 2005 - 22:06 #1
Tror fejlen ligger i "OnSubmit" hvor den kun siger "ved enter"
Så kan den jo ikke nå at vente 10 sekunder inden sidens reload, derfor jeg spørgere hvordan jeg laver det :)
Avatar billede flashn00b Nybegynder
18. juni 2005 - 01:09 #2
Slet ingen? :(
Avatar billede roenving Novice
18. juni 2005 - 03:00 #3
Hvad er det du ønsker, for det er helt korrekt, at formen vil reloades, da du jo kalder en funktion på serveren med din action på formen ?-)
Avatar billede nielle Nybegynder
18. juni 2005 - 08:08 #4
Fejlen består sandsynligvis i at du troe at din ok() funktion blever kaldt fra din bubble():

function bubble(f)
{
    var tekst = f.besked.value.replace(/<\/?[a-z].*?>/ig, "").substring(0, 70);
    parent.system.document.getElementById('js').src = 'skriv.php?besked=' +tekst;
    parent.chat.document.getElementById('textGoesHereTable').style.visibility='visible';
    parent.chat.document.getElementById('textGoesHere').innerHTML = tekst;
    return ok;
}

Det gør den imidlertid ikke. Du skal rette koden til:

function bubble(f)
{
    var tekst = f.besked.value.replace(/<\/?[a-z].*?>/ig, "").substring(0, 70);
    parent.system.document.getElementById('js').src = 'skriv.php?besked=' +tekst;
    parent.chat.document.getElementById('textGoesHereTable').style.visibility='visible';
    parent.chat.document.getElementById('textGoesHere').innerHTML = tekst;
    return ok();
}
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

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