Avatar billede andersthingholm Nybegynder
17. november 2004 - 09:32 Der er 9 kommentarer og
1 løsning

Nulstil textField

Hej,

Jeg har denne kode:

<p>
  <input name="myArray[]" type="text" id="myArray[]" value="1">
<a href="#">nulstil</a></p>
<p>
  <input name="myArray[]" type="text" id="myArray[]" value="2">
  <a href="#">nulstil</a></p>
<p>
  <input name="myArray[]" type="text" id="myArray[]" value="3">
  <a href="#">nulstil</a></p>

Hvordan laver min en onClick funktion (på teksten "nulstil") som nulstiller value for det enkelte textField?

VH

Anders
Avatar billede Slettet bruger
17. november 2004 - 09:48 #1
Ja for det første må flere elementer ikke have samme id, men bortset fra det kan du jo navngive dem og sige document.formnavn.feltnavn.value='';
Avatar billede andersthingholm Nybegynder
17. november 2004 - 09:50 #2
Jeg skal ikke bruge ID'et så det kan vel fjernes. Name skal være en del af et array.
Avatar billede Slettet bruger
17. november 2004 - 09:51 #3
så brug id til at navngive unikt.

bare noget id="1"

og så brug document.getElementById('1').value='';
Avatar billede olebole Juniormester
17. november 2004 - 10:42 #4
<ole>

... bare noget id="a1"

Et ID må ikke begynde med et tal  ;o)

/mvh
</bole>
Avatar billede olebole Juniormester
17. november 2004 - 10:54 #5
I øvrigt kan du skrive sådan:

<p>
  <input name="myArray[]" type="text" value="1"><a href="#" onclick="this.previousSibling.value='';return false">nulstil</a>
</p>

Det kræver dog, der ikke står noget (heller ikke et linieskift) mellem input'et og link'et. Skal du bruge afstand imellem dem, må du bruge margin-right på input'et - eller margin-left på link'et.
Avatar billede Slettet bruger
17. november 2004 - 10:56 #6
der fik du mig
Avatar billede olebole Juniormester
17. november 2004 - 11:02 #7
;o)
Man kunne også skrive en længere 'mother':

<p>
  <input name="myArray[]" type="text" value="1">Her kan stå, hvad somhelst -
  <a href="#" onclick="this.parentNode.getElementsByTagName('INPUT')[0].value='';return false">nulstil</a>
</p>

... som dog ville have godt af en mindre fedtsugning:

<script type="text/JavaScript">
function nulStil(elm) {
    elm.parentNode.getElementsByTagName("INPUT")[0].value = "",
}
</script>

<p>
  <input name="myArray[]" type="text" value="1">Her kan stå, hvad somhelst -
  <a href="#" onclick="nulStil(this);return false">nulstil</a>
</p>

Der er mange måder at gøre det på. Hvad man vælger, afgøres af, hvad man selv synes er 'sexy' ... bare man overholder reglerne  :)
Avatar billede olebole Juniormester
17. november 2004 - 11:06 #8
PS: Jeg plejer at råbe højt om effektiv kode, så selvfølgelig er det ikke helt ligegyldigt, hvad man skriver. Her er der dog tale om enkelte kald - så man vil aldrig kunne mærke forskel.
... inden nogen skulle finde på at rive mig den i næsen  ;D
Avatar billede andersthingholm Nybegynder
17. november 2004 - 14:53 #9
el_barto - smider du et svar?
Avatar billede Slettet bruger
17. november 2004 - 15:37 #10
mjoe :)
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