[JS] Variables en Wildcards

Pagina: 1
Acties:

  • Quartje
  • Registratie: Oktober 2000
  • Laatst online: 13-05 12:58
De situatie is als volgt:
PHP genereert vanuit een database een tabel met daarin een formulier waarin waardes gewijzigd kunnen worden waarna deze weer opgeslagen moeten worden in de database. Echter zijn bepaalde waardes afhankelijk van elkaar. Dus als een waarde van input field x wordt gewijzigd moet dit ook automatisch gewijzigd worden in de input fields y en z. De namen van deze inputfields zijn variabel, bv:
code:
1
2
3
4
5
6
7
<input type="text" name=program[1][sjaak]>

<input type="text" name=subprog[5][sjaak]>

<input type="text" name=product[2][sjaak]>

<input type="text" name=subprog[6][sjaak]>


wanneer de waarde van een input field met de naam: program[$id][sjaak] verandert wordt, wil ik dat alle inputfields subprog[$id][sjaak] en product[$id][sjaak] die waarde aannemen. Het probleem is, is dat $id meerdere waardes dus kan aannemen. Ik kan dus niet simpelweg onChange="functietje($id)" aanroepen. Ik weet niet hoe ik dit aan moet pakken. Ik heb lopen denken aan wildcards. Google en het forum heb ik de afgelopen dagen al flink lopen uitspitten, maar ik kom nog niet tot een oplossing. Kan iemand mij uit de brand helpen?

[ Voor 20% gewijzigd door Quartje op 16-11-2004 10:22 ]


  • BtM909
  • Registratie: Juni 2000
  • Niet online

BtM909

Watch out Guys...

:?

Wil je nou waardes in een formulier veranderen, zodat de rest automatisch meeverandert, of wil je name-waardes gaan wijzigen ?

Ace of Base vs Charli XCX - All That She Boom Claps (RMT) | Clean Bandit vs Galantis - I'd Rather Be You (RMT)
You've moved up on my notch-list. You have 1 notch
I have a black belt in Kung Flu.


  • Quartje
  • Registratie: Oktober 2000
  • Laatst online: 13-05 12:58
BtM909 schreef op dinsdag 16 november 2004 @ 10:23:
:?

Wil je nou waardes in een formulier veranderen, zodat de rest automatisch meeverandert, of wil je name-waardes gaan wijzigen ?
Ik wil de value van de input fields veranderen... Niet de namen. Sorry voor de onduidelijkheid ;)

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

André

Analytics dude

Ik denk dat je met een lus door alle elementen heen moet wandelen om overal waar sjaak in staat de waarde te veranderen.

  • Quartje
  • Registratie: Oktober 2000
  • Laatst online: 13-05 12:58
André schreef op dinsdag 16 november 2004 @ 10:27:
Ik denk dat je met een lus door alle elementen heen moet wandelen om overal waar sjaak in staat de waarde te veranderen.
Dat zal ik dan met een regular expression ofzo moeten checken?

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

André

Analytics dude

Quartje schreef op dinsdag 16 november 2004 @ 11:20:
[...]

Dat zal ik dan met een regular expression ofzo moeten checken?
Nee, je kunt met getElementsByTagname door alle inputs heen wandelen. En met indexOf check je of ['sjaak'] in de naam voorkomt :)

  • Quartje
  • Registratie: Oktober 2000
  • Laatst online: 13-05 12:58
André schreef op dinsdag 16 november 2004 @ 11:22:
[...]

Nee, je kunt met getElementsByTagname door alle inputs heen wandelen. En met indexOf check je of ['sjaak'] in de naam voorkomt :)
Met getElementsByTagname kan je toch alleen checken op <A>, <BODY>, <LALALA>, <ETC> ? :) Toch niet op de waarde van een name die in de tag staat?

  • BtM909
  • Registratie: Juni 2000
  • Niet online

BtM909

Watch out Guys...

Quartje schreef op dinsdag 16 november 2004 @ 11:40:
[...]

Met getElementsByTagname kan je toch alleen checken op <A>, <BODY>, <LALALA>, <ETC> ? :) Toch niet op de waarde van een name die in de tag staat?
getElementsByTagName geeft je array (let op het meervoud) van de opgegeven tags :)

Dus dan kan je loopen door de objecten die je hebt verzameld en per object je name.value uitlezen ;)

Wellicht handig om nog wat JS tutorials te volgen? (onder andere bij: http://www.w3schools.com/js)

Ace of Base vs Charli XCX - All That She Boom Claps (RMT) | Clean Bandit vs Galantis - I'd Rather Be You (RMT)
You've moved up on my notch-list. You have 1 notch
I have a black belt in Kung Flu.


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

André

Analytics dude

Quartje schreef op dinsdag 16 november 2004 @ 11:40:
[...]

Met getElementsByTagname kan je toch alleen checken op <A>, <BODY>, <LALALA>, <ETC> ? :) Toch niet op de waarde van een name die in de tag staat?
Dus dan check je op <INPUT>, en daarna loop je de verkregen collection door. Ik zal het met wat pseudo code duidelijk maken:

code:
1
2
3
4
5
6
elm = document.getElementsByTagname("input");

for (var i = 0; i < elm.length; i++)
{
  if ((elm[i].name).indexOf("[sjaak]") > -1) { alert("Gevonden!"); // dus value veranderen }
}

  • Quartje
  • Registratie: Oktober 2000
  • Laatst online: 13-05 12:58
Bedankt voor de support allemaal. Het is gelukt! :)
Pagina: 1