[JS] aProj_.. is Undefined

Pagina: 1
Acties:
  • 30 views sinds 30-01-2008

  • jvaneijk
  • Registratie: Mei 2003
  • Laatst online: 11-03 09:53
Beste GoTters,

Hier weer een probleempje met javascript.

Ik ben geen super guru op dit gebied zoals jullie zien.
Ik loop bij een bedrijf stage en die hebben een intranet applicatie gemaakt toen de tijd maar deze geeft een foutmelding. Nu zou dit niet zo'n probleem zijn geweest als degene die het toen de tijd gemaakt heeft er nog geweest zou zijn want hij is geloof ik de enige die het zootje wat hier staat snapt.

Hieronder heb ik een stukje van een include ASPfile die door middel van ASP een Javascript fucntie maakt en naar buiten schrijft.

Visual Basic:
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
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
<%
    ' =======================================================================================================================
    ' Sub ActBuildJSOptionArray(sQry, sArr, sFnc, sFrm, sElmSrc, sElmDes)
    '
    ' » sQry    string  Query om de select te vullen
    ' « sArr    string  Naam voor de te maken javascript array
    ' » sFnc    string  Naam van de javascriptfunctie die het vullen van de 2e selectbox regelt
    ' » sFrm    string  Naam van het formulier
    ' » sElmSrc string  Naam van de basis selectbox
    ' » sElmDes string  Naam van de afhankelijke selectbox
    ' =======================================================================================================================
    Sub ActBuildJSOptionArray(sQry, sArr, sFnc, sFrm, sElmSrc, sElmDes)
        Dim oRec
        Dim nCnt, nPrv
    
        Set oRec = Server.CreateObject("ADODB.RecordSet")
        oRec.Open sQry, Application("Con")
    
        nCnt = -1
        nPrv = -1
    
        Do While Not oRec.EOF
            If (IsNull(oRec(3))) Then
%>
    var <%=sArr%>_<%=oRec(0)%> = new Array();
    <%=sArr%>_<%=oRec(0)%>[0] = new Array(2);
    <%=sArr%>_<%=oRec(0)%>[0][0] = 'INVALID';
    <%=sArr%>_<%=oRec(0)%>[0][1] = 'Niet van toepassing';
<%  
            Else
        
                If CLng(nPrv) <> Clng(oRec(0)) Then
                    nCnt = -1
            
%>
    var <%=sArr%>_<%=oRec(0)%> = new Array();
<%
                End If
        
                nCnt = nCnt + 1
        
%>
    <%=sArr%>_<%=oRec(0)%>[<%=nCnt%>] = new Array(2);
    <%=sArr%>_<%=oRec(0)%>[<%=nCnt%>][0] = <%=oRec(2)%>;
    <%=sArr%>_<%=oRec(0)%>[<%=nCnt%>][1] = '<%=GetJSSaveString(oRec(3))%>';
<%
            End If
            
            nPrv = oRec(0)
            oRec.MoveNext
        Loop
    
        oRec.Close
        Set oRec = Nothing
%>
    function <%=sFnc%>()
    {
        var nKlt = document.forms['<%=sFrm%>'].elements['<%=sElmSrc%>'].options[document.forms['<%=sFrm%>'].elements['<%=sElmSrc%>'].selectedIndex].value;
        var nCnt;
        
        
        if (nKlt != 'INVALID')
        {
            nCnt = 0;

        try
        {
            if (eval('<%=sArr%>_' + nKlt + '[0][0];') != 'INVALID')
            {   

                document.forms['<%=sFrm%>'].elements['<%=sElmDes%>'].options.length = eval('<%=sArr%>_' + nKlt + '.length;') + 1;
                    
                document.forms['<%=sFrm%>'].elements['<%=sElmDes%>'].options[nCnt].value = 'INVALID';
                document.forms['<%=sFrm%>'].elements['<%=sElmDes%>'].options[nCnt].text = 'Niet van toepassing';
                document.forms['<%=sFrm%>'].elements['<%=sElmDes%>'].options[nCnt].selected = true;
                    
                nCnt = nCnt + 1;
            }
            else
            {
                document.forms['<%=sFrm%>'].elements['<%=sElmDes%>'].options.length = 1;
            }
                            
            for (i=0; i < eval('<%=sArr%>_' + nKlt + '.length;'); i++)
            {
                document.forms['<%=sFrm%>'].elements['<%=sElmDes%>'].options[nCnt].value = eval('<%=sArr%>_' + nKlt + '[i][0];');
                document.forms['<%=sFrm%>'].elements['<%=sElmDes%>'].options[nCnt].text = eval('<%=sArr%>_' + nKlt + '[i][1];');
                    
                nCnt = nCnt + 1;
            }
        }
        catch(error)
        {alert(error.description);}
        
        }
        else
        {
            document.forms['<%=sFrm%>'].elements['<%=sElmDes%>'].options.length = 1;
            
            document.forms['<%=sFrm%>'].elements['<%=sElmDes%>'].options[0].value = 'INVALID';
            document.forms['<%=sFrm%>'].elements['<%=sElmDes%>'].options[0].text = 'Niet van toepassing';
            document.forms['<%=sFrm%>'].elements['<%=sElmDes%>'].options[0].selected = true;
        }
    }
<%  
    End Sub 
%>


dit wordt geinclude in een ander bestand. en er zit ergens een fout in maar ik kan niet vinden waar tenminste de try en catch geeft aan dat hij in dat blok zit.

maar ik weet niet wat het is zou iemand mij misschien kunnen helpen?
Ik heb helaas geen concreet online voorbeeld omdat het hier om een interne bedrijfsapplicatie gaat.

iRacing Profiel


  • BtM909
  • Registratie: Juni 2000
  • Niet online

BtM909

Watch out Guys...

:/

Geef eens het resultaat (HTML + JS) weer (en 't liefst alleen de relevante delen).

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.


  • djluc
  • Registratie: Oktober 2002
  • Laatst online: 20:58
En de foutmelding of het ongewenste gedrag zou ook wel interessant zijn.

  • jvaneijk
  • Registratie: Mei 2003
  • Laatst online: 11-03 09:53
De foutmelding is dus aProj_.. is undefined en .. staat voor een 2 cijfrig nummer.
en ik wil best wel even de HTML code hier neergooien maar de relevante code is beetje boel want hij genereerd uit een DB en er is dus ong. 3100 regels relevante HTML code

iRacing Profiel


  • Bosmonster
  • Registratie: Juni 2001
  • Laatst online: 10-05 18:53

Bosmonster

*zucht*

Hier schieten we niks mee op. Alleen al die variabele naam waar het omgaat komt al niet eens voor in de code die je geeft. Als je code genereert serverside, post dan in ieder geval de code die GEGENEREERD wordt ipv je serverside code, want daar kunnen we gewoon NIKS mee...

Gezien je posthistory (http://gathering.tweakers.net/forum/find/poster/85433) ben je vooral bezig met anderen jouw problemen op laten lossen. Ook niet echt een aan te moedigen instelling :/

[ Voor 39% gewijzigd door Bosmonster op 05-03-2004 18:19 ]


Dit topic is gesloten.