Toon posts:

[JS] Variabele textarea name uitlezen *

Pagina: 1
Acties:

Verwijderd

Topicstarter
Het volgende is het geval. Ik heb een formulier waarvan de namen van de velden gegenereerd worden op basis van de waarden in een tabel. Dit moet omdat er gebruik wordt gemaakt van verschillende talen. De code van de textarea ziet er zo uit:

code:
1
<textarea name="<% =objRec_Lang("LA_Name")%>" style="width:500; height:125"><%=objRec_Lang.Fields("LA_Intro")%> </textarea>


Nu wil ik de velden uit het form laten updaten door een update query. Maar ik kan de waarde van de textarea niet uitlezen omdat de naam van dat veld niet "standaard" is. Het lijkt me overdreven om voor elke taal een nieuwe updatequery te schrijven of kan dit niet anders?

  • NMe
  • Registratie: Februari 2004
  • Laatst online: 23:30

NMe

Quia Ego Sic Dico.

Je kunt geloof ik iets doen als For Each x in Request.Form of iets dergelijks, maar ik zie eerlijk gezegd niet waarom je de namen van velden aan een taal wil aanpassen? Doorgaans heeft een gebruiker hier niets mee te maken, dus waarom doe je die niet gewoon fixed?

'E's fighting in there!' he stuttered, grabbing the captain's arm.
'All by himself?' said the captain.
'No, with everyone!' shouted Nobby, hopping from one foot to the other.


  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 22:24

gorgi_19

Kruimeltjes zijn weer op :9

Moet je drie talen tegelijk updaten? Zo nee, dan kan je imhoo best de textarea een vaste waarde geven en dmv een hidden form de juiste taal neerzetten.

Anders de Request.Form collectie doorlopen met:

ASP:
1
2
3
4
For each item in Request.Form
    ' Voorbeeldje
    Response.Write Item
Next

Digitaal onderwijsmateriaal, leermateriaal voor hbo


  • j_du_pee
  • Registratie: Maart 2000
  • Laatst online: 23-09-2024

j_du_pee

du pain, du vin, du pee

Verwijderd schreef op 01 maart 2004 @ 09:44: Dit moet omdat er gebruik wordt gemaakt van verschillende talen.
Hoezo :? gaat de gebruiker kijken hoe de naam van een input veld is oid :?

kaart != map && bottel != fles
Wacht op antwoord


Verwijderd

Topicstarter
gorgi_19 schreef op 01 maart 2004 @ 09:48:
Moet je drie talen tegelijk updaten? ...
Dat is wel het makkelijkst. Ivm met toevoegingen van talen in de toekomst is het het makkelijkst als de namen gegenereerd worden uit de database. Vandaar dat ik kies voor die variabele namen.
Of heeft iemand hier een andere tip voor. Ik ben vrij nieuw op het gebied van ASP, vandaar.

  • NMe
  • Registratie: Februari 2004
  • Laatst online: 23:30

NMe

Quia Ego Sic Dico.

Je kan het beste de namen van de velden gewoon in de taal van jouw keuze (Nederlands of Engels waarschijnlijk) laten, en dan die velden vullen met waarden die taalafhankelijk zijn.
Dus bijvoorbeeld een veld dat "welkomsttekst" heet, en de waardes "Welkom op deze site!" en "Welcome to this site!" bevat.

'E's fighting in there!' he stuttered, grabbing the captain's arm.
'All by himself?' said the captain.
'No, with everyone!' shouted Nobby, hopping from one foot to the other.


Verwijderd

Topicstarter
NMe84 schreef op 01 maart 2004 @ 09:57:
Je kan het beste de namen van de velden gewoon in de taal van jouw keuze (Nederlands of Engels waarschijnlijk) laten, en dan die velden vullen met waarden die taalafhankelijk zijn.
Dus bijvoorbeeld een veld dat "welkomsttekst" heet, en de waardes "Welkom op deze site!" en "Welcome to this site!" bevat.
Dit vat ik niet helemaal. Ik begrijp hieruit dat ik meerdere textarea's moet maken met dezelfde naam?

  • NMe
  • Registratie: Februari 2004
  • Laatst online: 23:30

NMe

Quia Ego Sic Dico.

Ik begin geloof ik te begrijpen wat je doet. Je wil dynamisch voor elke taal die je in je database hebt, een textarea neerzetten, en dan allemaal tegelijk updaten? Dus als je 100 verschillende talen hebt, dan heb je 100 verschillende textarea's?

'E's fighting in there!' he stuttered, grabbing the captain's arm.
'All by himself?' said the captain.
'No, with everyone!' shouted Nobby, hopping from one foot to the other.


  • Flard
  • Registratie: Februari 2001
  • Laatst online: 26-05 10:11
Nee, je kunt het beste de naam van het veld in een vaste taal weergeven (bijvoorbeeld Engels), zo weet je ook welk veld je op moet vragen.

In principe zien de bezoekers van je site de naam van het tekstveld toch niet (tenzij ze in de broncode gaan neuzen, maar dan is het hun eigen schuld als ze het niet begrijpen ;))


edit:

Als meneer NME84 boven mij hier gelijk heeft, dan zou kun je inderdaad het beste de namen van het tekstveld gelijk maken aan de naam van de taal, en dan later met

For Each Item In Request.Form
' Je update query
Next

door de waardes loopen.

[ Voor 30% gewijzigd door Flard op 01-03-2004 10:06 ]


Verwijderd

Topicstarter
NMe84 schreef op 01 maart 2004 @ 10:03:
Ik begin geloof ik te begrijpen wat je doet. Je wil dynamisch voor elke taal die je in je database hebt, een textarea neerzetten, en dan allemaal tegelijk updaten? Dus als je 100 verschillende talen hebt, dan heb je 100 verschillende textarea's?
Juist ja. Maar dat uitlezen voor een update krijg ik dus niet voor elkaar.

  • NMe
  • Registratie: Februari 2004
  • Laatst online: 23:30

NMe

Quia Ego Sic Dico.

code:
1
2
3
4
For Each veld in Request.Form
  query = "UPDATE jouwtabel SET " & veld & " = " & Request.Form(veld)
  jouwRecordSet.Open query, jouwConnectieObject
Next

Iets dergelijks zou je dan moeten helpen. Persoonlijk zou ik echter één taal per keer updaten. Is voor de gebruiker duidelijker en voor jou 10x makkelijker om te programmeren, zoals je nu ervaart.

[ Voor 13% gewijzigd door NMe op 01-03-2004 10:13 ]

'E's fighting in there!' he stuttered, grabbing the captain's arm.
'All by himself?' said the captain.
'No, with everyone!' shouted Nobby, hopping from one foot to the other.


Verwijderd

Topicstarter
NMe84 schreef op 01 maart 2004 @ 10:12:
code:
1
2
3
4
For Each veld in Request.Form
  query = "UPDATE jouwtabel SET " & veld & " = " & Request.Form(veld)
  jouwRecordSet.Open query, jouwConnectieObject
Next

Iets dergelijks zou je dan moeten helpen. Persoonlijk zou ik echter één taal per keer updaten. Is voor de gebruiker duidelijker en voor jou 10x makkelijker om te programmeren, zoals je nu ervaart.
Een taal per keer updaten is ook een optie. Maar je blijft dan toch met hetzelfde probleem zitten? Alle talen worden weergegeven (dit is een vereiste) en dus heb je ook die variabele naam nodig. Ik kan het ook zo maken dat ik per taal ga updaten maar dan krijg je dus telkens een nieuw form voor elke taal.

  • NMe
  • Registratie: Februari 2004
  • Laatst online: 23:30

NMe

Quia Ego Sic Dico.

Als je één taal per keer update heb je maar 1 form nodig, dat je per taal een extra hidden veld meegeeft. Denk aan een form dat er zo uitziet:
code:
1
2
3
Naam: <input type="text" value="Mijn Naam" name="naam" />
Beschrijving: <textarea name="beschrijving">Mijn beschrijving</textarea>
<input type="hidden" name="taal" value="nederlands" />

Je hebt dan dus je vaste veldnamen, die je zo kan ophalen, en ook zo op kan slaan in je database, mits je in die database niet voor elke taal andere veldnamen, en dus een andere tabel hebt. Je kunt als je dit goed toepast gewoon ALTIJD de velden naam, beschrijving en taal ophalen en die opslaan. Je kijkt hierbij naar de waarde van die hidden input om te zien welke tabel je moet aanpassen of hoe je een bepaald veld moet invullen.

'E's fighting in there!' he stuttered, grabbing the captain's arm.
'All by himself?' said the captain.
'No, with everyone!' shouted Nobby, hopping from one foot to the other.


Verwijderd

Topicstarter
NMe84 schreef op 01 maart 2004 @ 10:21:
Als je één taal per keer update heb je maar 1 form nodig, dat je per taal een extra hidden veld meegeeft. Denk aan een form dat er zo uitziet:
code:
1
2
3
Naam: <input type="text" value="Mijn Naam" name="naam" />
Beschrijving: <textarea name="beschrijving">Mijn beschrijving</textarea>
<input type="hidden" name="taal" value="nederlands" />

Je hebt dan dus je vaste veldnamen, die je zo kan ophalen, en ook zo op kan slaan in je database, mits je in die database niet voor elke taal andere veldnamen, en dus een andere tabel hebt. Je kunt als je dit goed toepast gewoon ALTIJD de velden naam, beschrijving en taal ophalen en die opslaan. Je kijkt hierbij naar de waarde van die hidden input om te zien welke tabel je moet aanpassen of hoe je een bepaald veld moet invullen.
Hier heb ik idd denk ik wel wat aan. Ik ga het eens uitproberen. Er is me nog een ding niet helemaal duidelijk, moet ik nu per taal (die ik laat genereren) een form maken of 1 groot form?

  • NMe
  • Registratie: Februari 2004
  • Laatst online: 23:30

NMe

Quia Ego Sic Dico.

Ik zou gewoon één form doen, dat altijd hetzelfde is. En dan geeft die hidden input, waarvan je zelf met ASP de value vult met de naam van de taal of iets dergelijks, aan wat je verder met die gegevens gaat doen.

'E's fighting in there!' he stuttered, grabbing the captain's arm.
'All by himself?' said the captain.
'No, with everyone!' shouted Nobby, hopping from one foot to the other.


Verwijderd

Topicstarter
Ik loop nu tegen een ander probleem aan. Ik heb voor de textarea's een soort WYSIWIG (javascript). Dit script heeft voor elke textarea een andere naam nodig :'(
De WYSIWIG wordt gegenereerd met het volgende scriptje:
code:
1
editor_generate('omschrijving');


de 'omschrijving' is de naam van de textarea... Deze mag dus niet hetzelfde zijn.

  • NMe
  • Registratie: Februari 2004
  • Laatst online: 23:30

NMe

Quia Ego Sic Dico.

Aan de aanroep hebben we niet zo veel. Kun je het javascriptje eens laten zien?

'E's fighting in there!' he stuttered, grabbing the captain's arm.
'All by himself?' said the captain.
'No, with everyone!' shouted Nobby, hopping from one foot to the other.


Verwijderd

Topicstarter
Het is de WYSIWIG editor van HTMLArea.

Deze is hier te downloaden:

http://www.interactivetools.com/products/htmlarea/

Maar ik heb te weinig verstand van java om dit overal aan te gaan passen.

  • NMe
  • Registratie: Februari 2004
  • Laatst online: 23:30

NMe

Quia Ego Sic Dico.

Ok, das geen script maar een applet zo te zien. Ik denk dat je gewoon die 'omschrijving' in je aanroep moet veranderen in de naam van je textarea of iets dergelijks. Ik kan hier dat appletje niet downloaden dus kan niet in de code spitten, maar het zal niet veel moeilijker zijn dan die aanroep wat veranderen denk ik.

'E's fighting in there!' he stuttered, grabbing the captain's arm.
'All by himself?' said the captain.
'No, with everyone!' shouted Nobby, hopping from one foot to the other.


Verwijderd

Topicstarter
Ik weet niet of dit gewaardeerd gaat worden maar dit is de code. De foutmelding die ontstaat is:

Line: 143 Error: 'style.width' is Null or not an object

Ik weet niet of je hier iets mee kunt?

code:
1
edit @drm: 6000 regels code is niet zo handig.

[ Voor 100% gewijzigd door drm op 01-03-2004 14:22 ]


  • .oisyn
  • Registratie: September 2000
  • Laatst online: 01:00

.oisyn

Moderator Devschuur®

Demotivational Speaker

Verwijderd schreef op 01 maart 2004 @ 11:28:
Ik weet niet of dit gewaardeerd gaat worden maar dit is de code. De foutmelding die ontstaat is:

Line: 143 Error: 'style.width' is Null or not an object

Ik weet niet of je hier iets mee kunt?
Nee, scripts debuggen mag je zelf doen, en we leveren geen support op andermans scripts

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.


  • drm
  • Registratie: Februari 2001
  • Laatst online: 09-06-2025

drm

f0pc0dert

Op verzoek weer open. Laten we ons wel focusen op het oplossen van het probleem ipv de debug-tent uit te hangen voor 3rd party scripts.

style.width is overigens een JS probleem, lijkt mij :?

edit:
-> W&G dan maar :Y)

[ Voor 8% gewijzigd door drm op 01-03-2004 14:29 ]

Music is the pleasure the human mind experiences from counting without being aware that it is counting
~ Gottfried Leibniz


  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 22:24

gorgi_19

Kruimeltjes zijn weer op :9

drm schreef op 01 maart 2004 @ 14:24:
style.width is overigens een JS probleem, lijkt mij :?
Je gaat door voor de koelkast; ASP doet er iig niets mee... :P

Digitaal onderwijsmateriaal, leermateriaal voor hbo


Verwijderd

Topicstarter
Tnx voor het heropenen. Het probleem is nog steeds niet opgelost. Maar het hoofdprobleem lag em in een asp script. Een mogelijke oplossing veroorzaakte een js foutmelding. Het is dus wel degelijk een ASP probleem.

Maar ik ben dus nog altijd niet geholpen. Iemand nog ideeen?
Pagina: 1