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

    Problema Calendar in pop-up non passa la data al TextBox

    ho utilizzato uno script presente in un sito per cercare di aprire una pop-up con un oggetto calendar e poi passare la data selezionata ad un TextBox che sta nella pagina dalla quale ho aperto la pop-up

    però non mi scrive proprio niente ne tantomeno mi chiude la pop-up con il calendar

    nella pagina che richiama la pop-up ho questo codice


    <form runat="server" name="frm">
    <asp:textbox runat="server" ID="datafine" CssClass="textbox" Width="250" MaxLength="50" />
    [img]immagini/show-calendar.gif[/img]
    </form>

    poi ho il codice JS che apre la pop-up

    <SCRIPT Language="JavaScript"><!--
    function popdate(campo, valore) {
    CalWin = window.open('calendar.aspx?campo='+campo+'&data='+ valore, 'calwindow','width=200,height=180,scrollbars=no,to olbar=no')
    }
    //--></SCRIPT>

    e la pagina calendar.aspx è cosi strutturata

    <SCRIPT runat="server">

    Sub ShowDate(sender As Object, e As EventArgs)
    Response.Write ("<S" + "CRIPT language=""Javascript""><!--" & VbCrlf)

    Response.Write ("window.opener." & Request.Params("campo") & ".value='")
    Response.Write (cal.SelectedDate.ToString("dd/MM/yyyy") & "';" & VbCrLf)

    Response.Write ("self.close();" & VbCrLf)
    Response.Write ("--></SCRIP")
    Response.Write ("T>")
    End Sub

    </SCRIPT>
    <form runat="server">
    <asp:calendar id="cal" runat="server" onselectionchanged="ShowDate" />
    </form>

    per quale motivo mi apre la pop-up con il calendar e quando clicco sulla data non mi chiude la pop-up e non mi scrive nulla nel TextBox con ID = datafine ?

    da notare che quando clicco sulla data il codice sorgente della pop-up mi mostra le seguenti righe di codice

    <SCRIPT language="Javascript"><!--
    window.opener.frm.datafine.value='23/10/2004';
    self.close();
    --></SCRIPT>

    che fare?

  2. #2
    Il tag Name nel form viene "snobbato" dal framework .NET.
    Se visualizza il codice HTML della pagina chiamante, noterai che il form ha un codice simile a questo:
    codice:
    <form name="_ctl0" method="post" action="pagina.aspx" id="_ctl0">
    Sostituisci quindi il codice js con questa stringa:
    [img]immagini/show-calendar.gif[/img]

    Fammi sapere


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.