Visualizzazione dei risultati da 1 a 4 su 4
  1. #1

    Problema lettura array ASP con JS

    Ho questo semplice e credo stupido problema che non riesco a risolvere.
    Di regola per leggera una qualsiasi variabile asp in ambiente js basta scrivere

    MyVarJS=<%=MyVarASP%>

    Stessa cosa per un array
    MyVarJS=<%=MyArrASP(0)%>

    ora però io devo leggere tutto l'array da JS e sono andato così

    codice:
    <%
    var="a,b,c,d"
    ArrASP=split(var,",")
    %>
    
    <script>
    Ln=<%=UBound(ArrASP)%>
    
    for (x=0;x<Ln;x++) {
       alert("<%=ArrASP("+x+")%>";
    }
    
    </script>
    Non funziona.
    Ho provato anche senza apici ma non ha senso.
    Come devo fare ?
    Ultima modifica di SoloWiFi; 02-08-2017 a 19:17
    Io nella vita ho visto cose che voi astemi neanche potete immaginare.

  2. #2
    Amministratore L'avatar di Vincent.Zeno
    Registrato dal
    May 2003
    residenza
    Emilia-Romagna (tortellini und cappelletti land!)
    Messaggi
    20,657
    il problema è asp o js?
    la variabile asp te la stampa?

  3. #3
    si si, l'array è corretto.
    Puoi fare anche te una prova (copia e incolla)

    Comunque l'errore è questo (lo vedo solo con visualizza origine):

    codice:
    <script>
    
    Ln=3;
    
    for
     (x=0;x<Ln;x++) {
    
       alert(
    " <font face="Arial" size=2>
    
    <p>Microsoft VBScript runtime <
    /font> <font face="Arial" size=2>error '800a000d'</font>
    
    <p>
    
    <font face=
    "Arial" size=2>Type mismatch: '[string: &quot;+x+&quot;]'</font>
    
    <p>
    
    <font face=
    "Arial" size=2>/MyWeb/test.asp</font><font face="Arial" size=2>, line 11</font> 
    Io nella vita ho visto cose che voi astemi neanche potete immaginare.

  4. #4
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    Ricorda che TUTTE le istruzioni ASP sono eseguite sul server PRIMA che la pagina (o porzione) arrivi al browser.
    Quindi ASP non potra' mai sapere che valore abbia in quel momento x e la sintassi, minestrone di ASP e Js, e' sbagliata concettualmente.

    Devi inviare l'intero array ASP al client con una sintassi che il Js possa comprendere, poi utilizzarlo in Js per i tuoi scopi.

    esempio (adattalo alle tue necessita')
    codice:
    <%
    var="a,b,c,d"
    ArrASP=split(var,",")
    ArrJs = "["""&replace(var,",",""",""")&"""]"
    %>
    
    <script>
    localArr = <%=ArrJs%>;
    Ln=<%=UBound(ArrASP)%>
    
    for(x=0;x<Ln;x++){
       alert(localArr[x]);
    }
    
    </script>
    


    Ultima modifica di br1; 04-08-2017 a 13:59
    Il guaio per i poveri computers e' che sono gli uomini a comandarli.

    Attenzione ai titoli delle discussioni: (ri)leggete il regolamento
    Consultate la discussione in rilievo: script / discussioni utili
    Usate la funzione di Ricerca del Forum

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.