Toon posts:

Textarea leegmaken door middel van javascript ???

Pagina: 1
Acties:

Verwijderd

Topicstarter
Hey mensen,

via een textarea haal ik informatie uit een database op.

Nu wil ik via een reset knop die textarea leegmaken.

Als ik dat doe wist ie alleen wat ik zelf getypt heb. Dus niet de zooi wat uit de database gekomen is.

Ik probeer nu via een zelfgemaakt javascrippie:

-----------------------------------------------------------------------------------
<script language="javascript">
function clear() {
window.document.getElementById("advies").value = "";
}
</script>

<input onclick="clear()" type="reset" name="Reset" value="Reset">

<textarea id="advies" name="advies" cols="50" rows="10"><%= rs.Fields("advies").Value %></textarea>
-----------------------------------------------------------------------------------

de boel leeg te maken. Maar waarom werkt het nou nog niet ??? 8)7

Alvast bedankt voor de reacties !

[ Voor 28% gewijzigd door Verwijderd op 23-12-2004 17:57 ]


  • Denhomer
  • Registratie: Augustus 2000
  • Laatst online: 12-10-2025

Denhomer

Doh !

Je moet de innerhtml/innertext property aanpassen van je textarea element, niet de value.
Of kijk hieronder even, ik zit er weer naast.

[ Voor 27% gewijzigd door Denhomer op 23-12-2004 18:01 ]


  • André
  • Registratie: Maart 2002
  • Laatst online: 18-05 16:30

André

Analytics dude

Maak van die type="reset" een type="button" ;)

  • Woudloper
  • Registratie: November 2001
  • Niet online

Woudloper

« - _ - »

Je kan gewoon gebruik maken van:
JavaScript:
1
document.getElementById("advies").value = "";

Dit moet gewoon werken. Wat je ook nog kan doen is het gehele form resetten, maar weet niet of je dat wilt?

edit:
wat André zegt...

[ Voor 13% gewijzigd door Woudloper op 23-12-2004 18:03 ]


  • André
  • Registratie: Maart 2002
  • Laatst online: 18-05 16:30

André

Analytics dude

Het probleem is dat hij een reset button heeft, en die zet de waarden weer terug zoals ze waren (dus met db tekst). Daarom moet het een normale button worden :)

  • crisp
  • Registratie: Februari 2000
  • Nu online

crisp

Devver

Pixelated

Een input type="reset" reset alle waarden van de formelementen naar hun initiële waarde - dat is dus wat anders dan leegmaken ;)
In in het geval van een onclick op een element zal eerst de onclick worden uitgevoerd, en daarna alsnog de actie van het element.

Anyway, dit hoort in Webdesign & Graphics

Intentionally left blank


Verwijderd

Topicstarter
Hey , alvast bedankt voor de snelle reacties, maar helaas het werkt nog niet:

Andre ik heb hem dus nu als type: button gezet

<script language="javascript">
function clear() {
window.document.getElementById("form1").innerHTML = "";
}
</script>

<input onclick="clear()" type="button" value="Reset">

[ Voor 23% gewijzigd door Verwijderd op 23-12-2004 18:12 ]


  • André
  • Registratie: Maart 2002
  • Laatst online: 18-05 16:30

André

Analytics dude

code:
1
2
3
4
5
6
7
8
9
<script language="javascript">
function clear()
{
  document.getElementById("advies").value = "";
}
</script>

<textarea id="advies" name="advies"><%= rs.Fields("advies").Value %></textarea>
<input onclick="clear()" type="button" value="Reset">

Verwijderd

Form elementen aanspreken met document.getElementById() vind ik smerig. Sowieso maakt het je code onnodig onoverzichtelijk als je meerdere formulieren op een pagina hebt.
Wat je in dit geval beter kunt doen:

HTML:
1
2
<textarea name="advies" cols="50" rows="8"><%= rs.Fields("advies").Value %></textarea>
<input type="button" value="Reset" onclick="this.form.elements['advies'].value = '';">


Natuurlijk mag je er ook een functie voor schrijven, maar bij een enkele, eenvoudige statement vind ik dat ook alleen maar onnodig verwarrend.

offtopic:
Enne, wel even netjes cols en rows opgeven hè? ;)

Verwijderd

Topicstarter
André schreef op donderdag 23 december 2004 @ 18:14:
code:
1
2
3
4
5
6
7
8
9
<script language="javascript">
function clear()
{
  document.getElementById("advies").value = "";
}
</script>

<textarea id="advies" name="advies"><%= rs.Fields("advies").Value %></textarea>
<input onclick="clear()" type="button" value="Reset">
Ik heb die script code gekopieerd zoals hierboven , maar nog steeds blijft de text uit de database staan.

8)7

  • André
  • Registratie: Maart 2002
  • Laatst online: 18-05 16:30

André

Analytics dude

Verander je functienaam van clear() naar iets anders, clear is een reserved word :)

Verwijderd

Topicstarter
André schreef op donderdag 23 december 2004 @ 18:24:
Verander je functienaam van clear() naar iets anders, clear is een reserved word :)
Jongens !

Helemaal TOPPIE !!!! :D

Dikke OWNAGE ! _/-\o_

De oplossing was:

<input type="button" value="Reset" onclick="this.form.elements['x'].value = '';">

en dan moet je daarnaast bij textarea: ID="x" EN name="x" hebben staan.

Dan werkt het perfect ! :D

Bedankt voor alle reacties ! _/-\o_

Verwijderd

Off topic maar ik zou dit iets anders doen:
<textarea id="advies" name="advies" cols="50" rows="10"><%= rs.Fields("advies").Value %></textarea>
Namelijk:
ASP:
1
2
3
<textarea id="advies" name="advies" cols="50" rows="10">
  <%= Server.HtmlEncode(rs.Fields("advies").Value) %>
</textarea>

Dat kan heel veel ellende voorkomen...

Edit: Cheatah, whitespace is voor de leesbaarheid... in het echt niet doen natuurlijk :)

[ Voor 31% gewijzigd door Verwijderd op 24-12-2004 00:10 ]


Verwijderd

Ik heb (nog) geen kaas gegeten van ASP, maar als die property nog niet geëscapet is, dan zul je dat inderdaad nog even moeten doen. Maar je voegt zomaar whitespace toe, en dat is dan weer minder handig ;)
Pagina: 1