Καλώς ορίσατε στο dotNETZone.gr - Σύνδεση | Εγγραφή | Βοήθεια
σε

 

Αρχική σελίδα Ιστολόγια Συζητήσεις Εκθέσεις Φωτογραφιών Αρχειοθήκες

Popup modal form

Îåêßíçóå áðü ôï ìÝëïò micfarmakis. Τελευταία δημοσίευση από το μέλος George J. Capnias στις 05-10-2006, 00:36. Υπάρχουν 2 απαντήσεις.
Ταξινόμηση Δημοσιεύσεων: Προηγούμενο Επόμενο
  •  18-09-2006, 16:48 16857

    Popup modal form

    Πώς μπορώ από μια φόρμα να σηκώσω μια modal popup forma ? Θέλω να ενημερώνω τιμές και στις 2 κατευθύνσεις.

    Κάνω post μια υλοποίηση που έχω που όμως ενώ λειτουργεί σε test project δεν τρέχει σωστά στην εφαρμογή ( h popup forma den kleinei - καμμια ιδέα γιατι?). Χρησιμοποιώ μια session variable προκειμένου να επιστρέψω την τιμή

    Στην parent form

    <%@ Page Language="VB" MasterPageFile="~/MasterPage.master" AutoEventWireup="false" CodeFile="Default2.aspx.vb" Inherits="Default2" title="Untitled Page" %>

    <asp:Content ID="Content1" ContentPlaceHolderID="ContentPlaceHolder1" Runat="Server">

    <script language='javascript'>

    function utOpenChild(sURL, nWdth, nHght, sName)

    {

    var sFeature = 'status:no;dialogWidth:' + nWdth + 'px;dialogHeight:' + nHght + 'px;dialogHide:true;help:no;scroll:no';

    var vVar = "";

    vVar = window.showModalDialog(sURL, window, sFeature);

    if (typeof(vVar) == 'string')

    { return vVar; }

    else

    { return ""; }

    }

    </script>

     

    <asp:TextBox ID="txtDemo1" runat="server" ></asp:TextBox>

    <asp:Button ID="cmdDemo3" runat="server" Style="z-index: 102;" Text="Open" />

    </asp:content>

     

     

    Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load

    If Not IsPostBack Then

    ' Assign Popup Code

    cmdDemo3.Attributes.Add("onClick", "return utOpenChild('Child.aspx?ID='" & txtDemo1.Text & ", 270, 160, 'oChild');")

    End If

     

    End Sub

    Protected Sub cmdDemo3_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles cmdDemo3.Click

    ' Assign Data from Session

     

    txtDemo1.Text = Session("DataFromChild")

    ' Clear Variable

     

    Session.Remove("DataFromChild")

    End Sub

     

    Child form

     

    Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

    If Not IsPostBack Then

    lblChild1.Text &= Me.Request.QueryString("ID")  '<--  to be implemented

    End If

     

    End Sub

    Private Sub cmdChild1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdChild1.Click

    ' Variables - The use of a stringbuider would be more elegant but only a few concatanations take place

    Dim sJava$ 

    ' Create Function in Page

    sJava &= "<script language='javascript'>"

    ' Store Data In Session

    Session("DataFromChild") = DropDownList1.SelectedValue

    ' Assign True Value

    sJava &= "self.returnValue =" & DropDownList1.SelectedValue & ";"

    sJava &= "alert(self.name);"

    ' Complete Script

    sJava &= "self.close();"

    sJava &= "</script>"

    ' Register String

    RegisterStartupScript("CloseChild", sJava)

    End Sub

     

     

    <form id="Form1" method="post" runat="server">

    <asp:Label id="lblChild1" style="Z-INDEX: 100; LEFT: 8px; POSITION: absolute; TOP: 8px" runat="server" BorderStyle="Inset" BorderWidth="1px" Width="248px" Height="31px" Font-Names="Tahoma" Font-Size="11px" ForeColor="Red">Message</asp:Label>

    <asp:DropDownList ID="DropDownList1" runat="server" Style="z-index: 104; left: 9px;

    position: absolute; top: 52px" AutoPostBack=false >

    <asp:ListItem>1</asp:ListItem>

    <asp:ListItem>2</asp:ListItem>

    <asp:ListItem>3</asp:ListItem>

    <asp:ListItem>4</asp:ListItem>

    <asp:ListItem>5</asp:ListItem>

    </asp:DropDownList>

    <asp:Button id="cmdChild2" style="Z-INDEX: 102; LEFT: 8px; POSITION: absolute; TOP: 104px" runat="server" Width="160px" Height="24px" Text="Cancel" Font-Names="Tahoma" Font-Size="11px" Visible="False"></asp:Button>

    <asp:Button id="cmdChild1" style="Z-INDEX: 103; LEFT: 192px; POSITION: absolute; TOP: 104px" runat="server" Width="65px" Height="24px" Text="OK" Font-Names="Tahoma" Font-Size="11px"></asp:Button>

    </form>

     

     

    Συγγνώμη για το μακροσκελές του post , τη μη μορφοποίησή του και ευχαριστώ εκ των προτέρων για τη βοήθειά σας
  •  04-10-2006, 14:08 17923 σε απάντηση της 16857

    Angry [:@] Απ: Popup modal form

    Πιθανώς να σας σώσει πολύτιμο χρόνο για αυτό και το δημοσιεύω. Η λύση του προβλήματος ήταν να θέσω στην modal child form στο head tag

    <base target=_self />  

     

    Μόνο έτσι η child form  δεν ανοίγει άλλες φόρμες και ισχύει μονο για IE. (αν κάνω λάθος για αυτό διορθώστε με για αυτό)

     

  •  05-10-2006, 00:36 17952 σε απάντηση της 17923

    Απ: Popup modal form

    Θα μπορούσες να χρησιμοποιήσεις μια άλλη λύση για να κάνεις modal dialogs πάνω από μια ASP.NET σελίδα. Μια Javascript βιβλιοθήκη που μπορείς να χρησιμοποιήσεις είναι το subModal, αλλά και άλλες βιβλιοθήκες που την έχουν χρησιμοποιήσει σαν βάση όπως το LightBox JS και LightBox JS v2.

    Η διαφορά τους είναι ότι είναι Javascript Βιβλιοθήκες, είναι cross browser και δεν κόβονται από τους pop-up blockers....

     

    George J.


    George J. Capnias: Χειροπρακτικός Υπολογιστών, Ύψιστος Γκουράρχης της Κουμπουτερολογίας
    w: capnias.org, t: @gcapnias, l: gr.linkedin.com/in/gcapnias
    dotNETZone.gr News
Προβολή Τροφοδοσίας RSS με μορφή XML
Με χρήση του Community Server (Commercial Edition), από την Telligent Systems