[html] Veld voor meedere forms gebruiken

Pagina: 1
Acties:

  • sharkzor
  • Registratie: Maart 2000
  • Laatst online: 27-04 17:55
Ben hier wat inelkaar aan t prutsen en nou wou ik 1 veld voor 2 forms gebruiken.
Met de search en google kom ik erachter dat je onClick kan gebruiken (waarschijnlijk javascript? nog weinig mee gedaan...)

anyway, na wat voorbeelden kom ik tot dit:

Let niet op de "\", dat komt omdat het in een print komt binnen een perlscript pagina ;)
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
<FORM name='form1' ACTION='mailInvoice.asp'>
<FORM name='form2' ACTION='bookkeepingLink.asp'>

<INPUT TYPE=hidden NAME='id' VALUE=\"". GetFormValue('id') ."\">
<TR>
<TD>Storingsnummer &nbsp\;</TD><TD><INPUT TYPE=text ID=inputText NAME='projectId' MAXLENGTH=6 SIZE=10 VALUE=\"". GetFormValue('projectId') ."\">
<INPUT type=button onClick=\"document.form2.submit()\;\" VALUE='Opvragen'></TD>
</TR>
<TR>
<TD>Email</TD><TD><INPUT TYPE=text ID=inputText NAME=emailadres MAXLENGTH=50 SIZE=30 VALUE=\"$custommail\"></TD>
</TR>
<TR>
<TD>Soort</TD>
<TD><select size=\"1\" name=\"typeOfLetter\">
<option value=\"machteging\" selected>Machteging</option>
<option value=\"machtegong\">Mislukte Machteging</option>
<option value=\"normal\">Factuur</option>
<option value=\"credit\">Credit Factuur</option>
</select>
</TD>
</TR>
</TABLE>
<INPUT type=button onClick=\"document.form1.submit()\;\" VALUE='Versturen'>
</FORM>
</FORM>


Wil dus het 1e invoer veld voor 2 forms gebruiken. Bij de 1e submit gaat ie naar 'bookkeepingLink.asp' waar via een sql query het @mail adres van een bepaald factuur opgevraagd word die in het 2e invoer veld dan automatisch weer ingevuld word. Daarna kan je met dezelfde gegevens de 2e submit gebruiken die naar mailInvoice.asp gaat.
D8 dat het zo wel goed was. De 2e submit werkt wel, maar de 1e weigert dienst. Mn browser zegt "document.form2 is null or not an object". Maar die heb ik toch echt gemaakt zoals u ziet.

:?

  • disjfa
  • Registratie: April 2001
  • Laatst online: 08-01 11:17

disjfa

be

Je mag geen formulier in een formulier zetten. Wat je wel zou kunnen doen is zorgen dat je een formulier hebt die de 2 afhandelingen kan regelen server side.

disjfa - disj·fa (meneer)
disjfa.nl


  • sharkzor
  • Registratie: Maart 2000
  • Laatst online: 27-04 17:55
disjfa schreef op maandag 17 oktober 2005 @ 11:09:
Je mag geen formulier in een formulier zetten. Wat je wel zou kunnen doen is zorgen dat je een formulier hebt die de 2 afhandelingen kan regelen server side.
dan moet ik serverside weer een hoop rommel erbij mikken... moet toch kunnen? 1 invoer veld voor 2 forms gebruiken? of niet?

Verwijderd

nee

nog niet iig, is wel in de pipeline voor html 5

je zou met js wel de content over kunnen zetten in een andere input

code:
1
2
3
4
5
6
function clone() {
document.getElementById('slave').value = this.value;
}

<input type="text" onchange="clone()">
<input type="hidden" id="slave">

[ Voor 69% gewijzigd door Verwijderd op 17-10-2005 11:51 ]


  • Borizz
  • Registratie: Maart 2005
  • Laatst online: 02-01 15:55
Je kunt wel het veld uit formulier 1 met behulp van Javascript naar een hidden field kopieren in formulier 2 na invullen van het veld in formulier 1. Houdt er wel rekening mee dat dit niet werkt als Javascript uitgeschakeld is en je het dan dus alsnog server side af moet handelen.

If I can't fix it, it ain't broken.


  • alienfruit
  • Registratie: Maart 2003
  • Laatst online: 18-04 05:37

alienfruit

the alien you never expected

Overigens is 'machteging' geen Nederlands woord. Ik denk dat je machtiging bedoelt :+

  • sharkzor
  • Registratie: Maart 2000
  • Laatst online: 27-04 17:55
Verwijderd schreef op maandag 17 oktober 2005 @ 11:49:
nee

nog niet iig, is wel in de pipeline voor html 5

je zou met js wel de content over kunnen zetten in een andere input

code:
1
2
3
4
5
6
function clone() {
document.getElementById('slave').value = this.value;
}

<input type="text" onchange="clone()">
<input type="hidden" id="slave">
ok, tnx!
probeer t nu te implementeren, ken nog niet zoveel javascript, dus met google erbij kwam ik tot dit niet werkende geval:

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
<SCRIPT LANGUAGE="Javascript" TYPE="text/javascript">
function clone()
{
document.getElementById('slave').value = this.value;
}
</SCRIPT>
<%

if (GetFormValue('projectId') > 0)
{
    $SQLquery = "SELECT emailaddress, emailAddressInvoice FROM customer where ID =". GetFormValue('projectId');
    @custommail = &returnRecordSis(GetFormValue('id'),$ODBCconnectionName,$SiSdatabaseLogin,$SiSdatabasePassword,$SQLquery);
}

print "<BR><BR><BR><H3>Mail hier alsnog een factuur nummer</H3>";
print "
<TABLE BORDER=0>

<FORM name='form1' ACTION='mailInvoice.asp'>

<INPUT TYPE=hidden NAME='id' VALUE=\"". GetFormValue('id') ."\">
<TR>
<TD>Storingsnummer &nbsp\;</TD><TD><INPUT TYPE=text ID=inputText NAME='projectId' MAXLENGTH=6 SIZE=10 onchange=\"clone()\;\" VALUE=\"". GetFormValue('projectId') ."\">
<INPUT type=button onClick=\"document.form2.submit()\;\" VALUE='Opvragen'></TD>
</TR>
<TR>
<TD>Email</TD><TD><INPUT TYPE=text ID=inputText NAME=emailadres MAXLENGTH=50 SIZE=30 VALUE=\"$custommail\"></TD>
</TR>
<TR>
<TD>Soort</TD>
<TD><select size=\"1\" name=\"typeOfLetter\">
<option value=\"machteging\" selected>Machteging</option>
<option value=\"machtegong\">Mislukte Machteging</option>
<option value=\"normal\">Factuur</option>
<option value=\"credit\">Credit Factuur</option>
</select>
</TD>
</TR>
</TABLE>
<INPUT type=button onClick=\"document.form1.submit()\;\" VALUE='Versturen'>
</FORM>

<FORM name='form2' ACTION='bookkeepingLink.asp'>
<INPUT TYPE=hidden NAME='id' VALUE=\"". GetFormValue('id') ."\">
<input type=\"hidden\" id=\"slave\">
</FORM>

";
%>


lukt dus nog niet echt 8)7

object doesn't support this property or method...

[ Voor 46% gewijzigd door sharkzor op 17-10-2005 12:57 ]


Verwijderd

Als die hamer op je kop een roep voor hulp is in deze, dan zou ik het volgende eens proberen.. ;)

code:
1
2
3
4
5
function clone(elm) {
  document.getElementById('slave').value = elm.value;
}

<input type="text" onchange="clone(this)">


offtopic:
Volgende keer is client-side code voldoende. Sterker nog, het is makkelijker te bekijken en te proberen voor iemand met andere serverconfiguratie. Bijv. ik met Apache + PHP.

  • sharkzor
  • Registratie: Maart 2000
  • Laatst online: 27-04 17:55
mmm... zelfde error.
volgens mij ligt het aan dit stukje kan ik uit de foutmelding opmaken (regelnummer)

<INPUT type=button onClick="document.form2.submit();" VALUE='Opvragen'>

maar daar is toch niks mis mee?
Pagina: 1