2012-08-29 35 views
0

我有一個上傳功能,彈出在一個不同的窗口,當我提交我想發送信息回到上傳窗口打開的頁面。影響提交另一個文檔

這是可能的某種方式與ASP.net或C#? 或者我將不得不使用一些JavaScript?如何?

我的2頁: news.aspx - 包含我的新聞的formview。和一些輸入的表格。 這是打開上傳頁面的鏈接是...

uploader.aspx - 包含我的上傳控制器和上傳的C#代碼。 這應該從我的C#代碼發回一個字符串到news.aspx,並將其放在我的輸入字段或標籤中,不重要。

uploader.aspx文件:

<form id="form1" runat="server"> 
<div> 
Vælg en fil at uploade:<br /> 
    <asp:FileUpLoad id="FileUpLoad1" runat="server" /> 
    <asp:Button id="UploadBtn" Text="Upload File" OnClick="UploadBtn_Click" runat="server" Width="105px" /> 
    <br /> 
    <asp:Label ID="Label1" runat="server" Text=""></asp:Label> 
</div> 
</form> 

代碼背後:

using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Web; 
using System.Web.UI; 
using System.Web.UI.WebControls; 

public partial class admin_Default2 : System.Web.UI.Page 
{ 
protected void Page_Load(object sender, EventArgs e) 
{ 

} 
protected void UploadBtn_Click(object sender, EventArgs e) { 

    Label1.Text = "Status: Uploader..."; 
    if (FileUpLoad1.HasFile) { 
     FileUpLoad1.SaveAs(@"C:\Users\138409\Documents\Visual Studio 2010\Projects\Musicon\img\news\" + FileUpLoad1.FileName); 
     Label1.Text = "Status: " + FileUpLoad1.FileName + " er blevet uploadet"; 
    } else { 
     Label1.Text = "Status: Filen blev ikke uploadet..."; 
    } 
} 
} 
+0

如何打開彈出:'的window.open(...)','window.showModalDialog(...)',帶'鏈接目標= 「_空白」'?有些不同? – user1429080

回答

0

下面是一些JavaScript代碼來創建一個彈出窗口,在彈出的窗口關閉之前,獲取一些信息。 (我會在個位相加一個jQuery的例子)

//Site1.Master 
<%@ Master Language="C#" AutoEventWireup="true" CodeBehind="Site1.master.cs" Inherits="PopupRedirect.Site1" %> 

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 

<html xmlns="http://www.w3.org/1999/xhtml"> 
<head runat="server"> 
    <title></title> 
    <asp:ContentPlaceHolder ID="head" runat="server"> 
    </asp:ContentPlaceHolder> 
</head> 
<body> 
    <form id="form1" runat="server"> 
    <div> 
     <asp:ContentPlaceHolder ID="ContentPlaceHolder1" runat="server"> 

     </asp:ContentPlaceHolder> 
    </div> 
    </form> 
</body> 
</html> 

//Page1.aspx 
<%@ Page Title="" Language="C#" MasterPageFile="Site1.Master" AutoEventWireup="true" CodeBehind="Page1.aspx.cs" Inherits="PopupRedirect.Page1" %> 
<asp:Content ID="Content1" ContentPlaceHolderID="head" runat="server"> 
    <script type="text/javascript"> 
    var message = "Hello World!"; 

    var closeWindow = function(event) { 
     event.preventDefault(); 
     window.close(); 
    }; 

    window.onload = function() { 
     document.getElementById('upload').addEventListener('click', closeWindow, false); 
    }; 
    </script> 
</asp:Content> 
<asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1" runat="server"> 
    <button id="upload">Upload File</button> 
</asp:Content> 


//UploadPage.aspx 
<%@ Page Title="" Language="C#" MasterPageFile="Site1.Master" AutoEventWireup="true" CodeBehind="UploadPage.aspx.cs" Inherits="PopupRedirect.UploadPage" %> 
<asp:Content ID="Content1" ContentPlaceHolderID="head" runat="server"> 
    <script type="text/javascript"> 
    var popupWindow; 
    var windowOptions = "menubar=yes,location=yes,resizable=no,scrollbars=no,status=yes,width=350,height=350"; 
    var upload = function (event) { 
     event.preventDefault(); 

     popupWindow = window.open("Page1.aspx", "Upload Page", windowOptions); 
     popupWindow.onbeforeunload = pageClose; 
    }; 

    var pageLoad = function(event) { 
     document.getElementById('uploadLink').addEventListener('click', upload, false); 
    }; 

    var pageClose = function (event) { 
     //put the code here that you want to execute when the window is done. 
     //like getting the value of some javascript variables 
     if(typeof (popupWindow.message) != "undefined") { 
     alert(popupWindow.message); 
     } 
    }; 

    window.onload = pageLoad; 

    </script> 
</asp:Content> 
<asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1" runat="server"> 
    <span>Welcome to this page! Click to upload.</span> 
    <button id="uploadLink">Upload</button> 
</asp:Content>