Ik heb een interface verzonnen, waar ik via een popup window, naar een gebruiker ga zoeken, de gebruiker selecteer en deze dan via een knop toe kan voegen aan een select lijstje in het hoofdwindow (de opener). Zo kan ik namelijk meerder gegevens verzamelen in een formulier en met een submit de hele zaak in een keer in de database proppen en dat het voor de gebruiker ook nog een beetje lekker werkt.
Ikke dit proberen zoals in onderstaande code (sorry voor de lap tekst. Ik heb het wel zo veel mogelijk ingekort tot de essentie, maar dit houd ik toch over en anders is het volgens mij niet meer duidelijk). Wat blijkt, het werkt niet...
Ik ben niet zo ervaren met JavaScript, dus ik denk d'r zit vast een foutje in. Ikke debuggen, totdat ik een ons weeg. Op een gegeven moment (na een uur of vier), kom ik er achter dat het gewoon zou moeten werken, maar niet werkt.
Ik kon namelijk wel een select lijstje vullen in hetzelfde window en ook een select lijstje leeg maken in de opener window. Leeg maken vind ik een zwaardere actie dan iets toevoegen, dus ik vind dat het moet werken. 
Ikke proberen in Netscape 6.2 ipv IE (zowel 5.5 als 6.0). Werkt wel!
Maar ja, dat is nu dus een probleem. Eisen dat je Netscape gebruikt kan ik natuurlijk niet maken.
Is er wellicht iets waar ik toch gezondigd heb, en dat het daarom in IE mis gaat? Of is er een andere manier om hetzelfde te bereiken, zodat dit toch gaat werken in IE?
O ja, de error is ook lekker cryptisch:
De server heeft een uitzondering geretourneerd
Ikke dit proberen zoals in onderstaande code (sorry voor de lap tekst. Ik heb het wel zo veel mogelijk ingekort tot de essentie, maar dit houd ik toch over en anders is het volgens mij niet meer duidelijk). Wat blijkt, het werkt niet...
Ik ben niet zo ervaren met JavaScript, dus ik denk d'r zit vast een foutje in. Ikke debuggen, totdat ik een ons weeg. Op een gegeven moment (na een uur of vier), kom ik er achter dat het gewoon zou moeten werken, maar niet werkt.
Ikke proberen in Netscape 6.2 ipv IE (zowel 5.5 als 6.0). Werkt wel!
Maar ja, dat is nu dus een probleem. Eisen dat je Netscape gebruikt kan ik natuurlijk niet maken.
Is er wellicht iets waar ik toch gezondigd heb, en dat het daarom in IE mis gaat? Of is er een andere manier om hetzelfde te bereiken, zodat dit toch gaat werken in IE?
O ja, de error is ook lekker cryptisch:
De server heeft een uitzondering geretourneerd
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
50
51
52
53
54
55
| opener.html
<HTML>
<HEAD>
<SCRIPT LANGUAGE="JavaScript">
function fOpenPopup () {
winPopup=window.open ( '', winPopup, 'toolbar=no,width=500,height=500' );
winPopup.focus();
}
</SCRIPT>
</HEAD>
<BODY BGCOLOR="#F0F4F9" TOPMARGIN="0" LEFTMARGIN="0" MARGINHEIGHT="0" MARGINWIDTH="0">
<FORM NAME="frmProject" METHOD="post" ACTION="submit.html">
<!--overige HTML code -->
<SELECT NAME="docent" SIZE="4" STYLE="width: 110"></SELECT><BR>
<A HREF="popup.html" TARGET="winPopup" onClick="fOpenPopup();">Nieuw</A>
<INPUT TYPE="submit" VALUE="Opslaan">
</FORM>
</BODY>
</HTML>
popup.html
<HTML>
<HEAD>
</HEAD>
<BODY>
<SCRIPT LANGUAGE="JavaScript">
function fVoegToe ( )
{
if ( document.frmAddUser.user.selectedIndex != -1 )
{
userid = document.frmAddUser.userid[document.frmAddUser.userid.selectedIndex].value;
name= document.frmAddUser.userid[document.frmAddUser.userid.selectedIndex].text;
myLength = window.opener.document.frmProject.docent.length;
window.opener.document.frmProject.docent.options[myLength] = new Option( name, userid );
window.close();
}
else
{
alert ( 'Selecteer een gebruiker' );
}
}
</SCRIPT>
<FORM NAME="frmAddUser">
<SELECT NAME="userid" SIZE="10">
<OPTION VALUE="1">Jan Janssen</OPTION>
<OPTION VALUE="2">Henk de Vries</OPTION>
<OPTION VALUE="3">Jan Klaassen</OPTION>
</SELECT><BR><BR>
<INPUT TYPE="button" VALUE="Voeg toe" onClick="fVoegToe();">
</FORM>
</BODY>
</HTML> |