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

    [ASP.NET] Codice Jscript in pagina ASP.NET

    Adesso non so se ho fatto bene a postare qui o forse era meglio postare nella sezione dedicata al Javascript... il problema infatti è che non riesco ad adattare un codice JScript in una pagina ASP.NET

    Il codice in questione serve per far visualizzare il calendario dove scegliere una data: si apre una finestra, si sceglie la data e la data così scelta viene automaticamente inserita nella TextBox della form.

    Il cuore del codice è il seguente, che viene inserito nel <form> sull'evento onClick magari abbinato (come ho fatto io) ad una immagine. Importanti sono i "riferimenti" dove poi viene caricata la data, nel mio caso nella textbox "DataInserimento" della form chiamata "NomeForm":


    codice:
    <form enctype="multipart/form-data" onsubmit="return FrontPage_Form1_Validator(this)" language="JavaScript" name="FrontPage_Form1">
    
    [ ... ]
    
    <a HREF="#" onClick="cal.select(document.forms['NomeForm'].DataInserimento,'anchor1','dd/MM/yyyy'); return false;" Name="anchor1" ID="anchor1" style="text-decoration: none">
    [img]../../../images/showcalendar.gif[/img]</a>
    
    [ ... ]
    
    </form>

    Inserendo questo codice in una form "normale" di una pagina .asp (e non .aspx) tutto funziona a meraviglia.

    Siccome però volevo fare l'upload con ASP.NET, sono costretto a inseire una form con il tag: runat="server":


    codice:
    <form enctype="multipart/form-data" onsubmit="return FrontPage_Form1_Validator(this)" language="JavaScript" name="FrontPage_Form1" runat="server">
    
    [ ... ]
    
    <a HREF="#" OnClick="ChiamaCalendario('FrontPage_Form1')" Name="anchor1" ID="anchor1" style="text-decoration: none" runat="server">
    [img]../../../images/showcalendar.gif[/img]</a>

    E questo mi modifica tutto, perchè modificando tutte le componenti della form inserendioci lo steso tag runat="server" non mi funziona più il calendario. Quando clicco sull'immagine mi dice che non trova il riferimento alla TextBox

    Ho provato a fare una funzione JScript (per quello che ci capisco) per spostare il comando fuori dalla fomr ma il risultato non cambia.

    Qualcuno sa come aiutarmi? Vi prego di non suggerirmi di usare il "calendar" di ASP.NET perchè... non sono riuscito a usarlo!!

    GRAZIE A TUTTI
    Il mio ultimo libro:
    Giorni di Follia. Presenze inquietanti a Pescara.
    www.giornidifollia.it

  2. #2
    Nell Page_Load metti :

    codice:
    Controllo.Attributes.Add("onclick","funzione_js;")
    Meglio se la funzioni la metti in un blocco script nell' header e poi la chiami semplicemente come ti ho mostrato sopra.

  3. #3
    Ciao e grazie della dritta, prima che mi butti a scrivere codeice volevo capire un paio di cose:

    1) Faccio una funzione JS dove metto in pratica il comando che c'è sullevento onClick:

    codice:
    <SCRIPT LANGUAGE="JavaScript">
    
    function ChiamaCalendario() {
    
    cal.select(document.forms['NomeForm'].DataInserimento,'anchor1','dd/MM/yyyy'); return false;
    
    }
    
    </SCRIPT>
    2) Nel Page_load metto il comando che mi hai indicato, ma "controllo" che cos'è? Il nome della mia TextBox immagino. E "funzione_js" sarà la mia funzione "ChiamCalendario"?

    Guarda dvvero grazie di cuore per il tempo che mi dedichi.
    Il mio ultimo libro:
    Giorni di Follia. Presenze inquietanti a Pescara.
    www.giornidifollia.it

  4. #4
    Certo poniamo che hai questo controllo

    Clicca qui

    il codice sarà:

    codice:
    Public Sub Page_Load(s as object, e as eventArgs)
         mioClick.attributes.add("onclick","funzioneJs")
    End Sub
    Mentre la parte html avrà

    codice:
    <script language="javascript" type="text/javascript">
    function funzioneJs(){
    //codice funzione
    //bla bla bla
    }
    </script>

  5. #5
    Acc... continua a darmi lo stesso errore:

    Errore: 'document.forms.FrontPage_Form1.DataInserimento' è nullo o non è un oggetto.

    Eppure ho fatto come dici:

    codice:
    <script language="javascript">
    
    function ChiamaCalendario() {
    
    cal.select(document.forms['FrontPage_Form1'].DataInserimento,'anchor1','dd/MM/yyyy');
    return false;
    
    }
    
    </script>
    
    
    <script language="VB" RUNAT="server">
    
    Sub Page_load(ByVal sender As Object, ByVal e As eventArgs)
    	
      anchor1.Attributes.Add("onclick","ChiamaCalendario()")
    	
    End Sub
    
    </script>

    E di seguito come ho inserito nel codce HTML la mia TextBox e l'immagine da cliccare per caricare il calendario:


    codice:
    <input type="text" id="DataInserimento" name="DataInserimento" runat="server">
    
    <a HREF="#" Name="anchor1" ID="anchor1" style="text-decoration: none" runat="server">
    [img]showcalendar.gif[/img]</a>
    Ti viene in mente niente?
    Il mio ultimo libro:
    Giorni di Follia. Presenze inquietanti a Pescara.
    www.giornidifollia.it

  6. #6
    ma questo da dove lo tiri fuori??

    cal.select(document.forms['FrontPage_Form1'].DataInserimento,'anchor1','dd/MM/yyyy');

    mai visto ... e poi cal cosa sarebbe??

    Devi dare il focus al controllo per caso?

  7. #7
    ehm...
    quello sarebbe il comando che uso per far comparire sto benedetto calendario (lo sto odiando).

    In testa alla pagina metto questo script sempre JS, che in pratica richiama tutte le funzioni necessarie per far comparire il calendario

    codice:
    <SCRIPT LANGUAGE="JavaScript" SRC="FunzioniJS/CalendarPopup.js"></SCRIPT>
    <SCRIPT language=JavaScript>document.write(getCalendarStyles());</SCRIPT>
    <SCRIPT LANGUAGE="JavaScript">
    <!--
    var cal = new CalendarPopup("testdiv1");
    cal.showYearNavigation(); 
    cal.showYearNavigationInput();
    cal.setMonthNames('Gennaio','Febbraio','Marzo','Aprile','Maggio','Giungo','Luglio','Agosto','Settembre','Ottobre','Novembre','Dicembre'); 
    cal.setDayHeaders('D','L','M','M','G','V','S'); 
    cal.setWeekStartDay(1); 
    cal.setTodayText("Oggi");
    //-->
    </SCRIPT>
    In pratica lo script del calendario funziona sempre bene. Tranne quando inserisco nel mio form il tag runat="server"... pensavo fosse questione di integrare il codice JS nell'ASP.NET, ma insieme a te ho "tirato fuori" il codice ed integrato bene quindi non so più cosapensare.

    Guarda, giusto se ti viene un lampo di genio altrimenti non ti dannare la vita. Ti ringrazio già tanto fin qui...
    Il mio ultimo libro:
    Giorni di Follia. Presenze inquietanti a Pescara.
    www.giornidifollia.it

  8. #8
    e certo in quel caso i file js vanno allegati in questo modo :

    Page.RegisterClientScriptBlock

    guarda qui:

    http://www.aspitalia.com/articoli/as...pt.aspx?page=1

  9. #9
    WOW...
    mi hai aperto un mondo nuovo!!

    Ti faccio sapere se risolvo.

    GRAZIEEEE
    Il mio ultimo libro:
    Giorni di Follia. Presenze inquietanti a Pescara.
    www.giornidifollia.it

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 © 2026 vBulletin Solutions, Inc. All rights reserved.