.cs里写以下代码可用.
Response.Write ("<script>window.opener.document.myform.picurl.value='"+newfile +"'</script>");
.aspx文件中的<script runat="server">...</script>中就不能用了是不是要把两个Script去掉,如下
Response.Write ("window.opener.document.myform.picurl.value='"+newfile +"'");
但去掉之后就提不到原有的效果了。。请高手指点。。

解决方案 »

  1.   

    <script runat="server" language="c#">...</script>
    这样行不!!没搞过这种方式
      

  2.   

    不是那个意思啊
    就是
    Response.Write ("<script>window.opener.document.myform.picurl.value='"+newfile +"'</script>");
    放在<script runat="server">...</script>不能用了
    要怎么改才能用,在.cs可以直接用的
      

  3.   

    Page.regi..script("","<script>window.open('此处为要打开的页面')</script>");(那词我不记得拉,你把它给点出来吧)
      

  4.   

    已经改了,还是有错误Page.RegisterStartupScript("","<script>('window.opener.document.myform.pic.value='"+newfile +"'')</script>");
      

  5.   

    <script>...</script> 在aspx中会把它当作script代码段,所以会出错,这样试试看:string msg="<script" + >window.opener.document.myform.picurl.value='" +newfile 
       + "';</" + "script>" ;
    Response.Write (msg);总之是把<script>和</script>分开写,不要让他们成为一个标识段,试试看。
      

  6.   

    汗死
    <script runat="server">...</script>你这个代码是什么意思???
    你得指明脚本语言是什么!
    要么就<script runat="server" language="c#">...</script>
    在这个标签内你得写Page_Load函数,然后在函数中写
      

  7.   

    <script language="C#" runat="server">
    void Page_Load(Object sender,EventArgs e)
    {
       Response.Write ("window.opener.document.myform.picurl.value='"+newfile +"'");}
      

  8.   

    <script language="C#" runat="server">
    void Page_Load(Object sender,EventArgs e)
    {
       Response.Write ("window.opener.document.myform.picurl.value='"+newfile +"'");}
    </script>
      

  9.   

    LZ输出的是js代码,要是写在aspx里面的话,直接写成js不就可以了嘛
    <script language="javascript">
      window.opener.document.myform.picurl.value="+<%# newfile %>;
    </scirpt>
      

  10.   

    看下面代码:
    <%@ Page Language="C#" %>
    <script runat="server">
        protected void Button1_Click(object sender, EventArgs e)
        {
            if (FileUpload1.HasFile)
            {
                string fileExt =
                   System.IO.Path.GetExtension(FileUpload1.FileName);            if (fileExt == ".gif")
                {
                    try
                    {
                        FileUpload1.SaveAs(Server.MapPath("Uploads/") +
                           FileUpload1.FileName);
                        //RegularExpressionValidator1.ErrorMessage = "";   
                        Label1.Text = "File name: " +
                            FileUpload1.PostedFile.FileName + "" +
                            FileUpload1.PostedFile.ContentLength + " kb" +
                            "Content type: " +
                            FileUpload1.PostedFile.ContentType;
                       string newfile="Uploads/" + FileUpload1.FileName;
    Page.RegisterStartupScript("","<script>window.opener.document.myform.pic.value='"+newfile+"';</script>");//这里有问题                }
                    catch (Exception ex)
                    {
                        Label1.Text = "ERROR: " + ex.Message.ToString();
                    }
                }
                else
                {
                    Label1.Text = "Only .gif|.jpg files allowed!";
                }
            }
            else
            {
                Label1.Text = "请上传文件.";
            }
        }</script>
    上面那段Page.RegisterStartupScript("","<script>window.opener.document.myform.pic.value='"+newfile+"';</script>");
    有问题
      

  11.   

    Response.Write ("<script language='javaScript'>window.opener.document.myform.picurl.value='"+newfile +"'</script>");
      

  12.   

    说明: 在编译向该请求提供服务所需资源的过程中出现错误。请检查下列特定错误详细信息并适当地修改源代码。 编译器错误信息: CS1010: 常量中有换行符源错误: 行 61:                     ImgPreview.Visible = true;                    
    行 62:                     ImgPreview.ImageUrl = newfile;
    行 63:                     Response.Write("<script language='javaScript'>window.opener.document.myform.pic.value='" + newfile + "'</script>");
    行 64: 
    行 65:                 }
     源文件: e:\ASPNET\Admin\UpLoadPic.aspx    行: 63 显示详细的编译器输出:
    E:\ASPNET\Admin\Bin> "C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\csc.exe" /t:library /utf8output /R:"C:\WINDOWS\assembly\GAC_32\System.Web\2.0.0.0__b03f5f7f11d50a3a\System.Web.dll" /R:"C:\WINDOWS\assembly\GAC_MSIL\System.Web.Services\2.0.0.0__b03f5f7f11d50a3a\System.Web.Services.dll" /R:"C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\mscorlib.dll" /R:"C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files\admin\2b225bde\d930a7d9\assembly\dl3\0395daf1\5262af63_b04cc601\DXControls.DLL" /R:"C:\WINDOWS\assembly\GAC_32\System.EnterpriseServices\2.0.0.0__b03f5f7f11d50a3a\System.EnterpriseServices.dll" /R:"C:\WINDOWS\assembly\GAC_MSIL\System.Configuration\2.0.0.0__b03f5f7f11d50a3a\System.Configuration.dll" /R:"C:\WINDOWS\assembly\GAC_MSIL\System.Drawing\2.0.0.0__b03f5f7f11d50a3a\System.Drawing.dll" /R:"C:\WINDOWS\assembly\GAC_MSIL\System.Xml\2.0.0.0__b77a5c561934e089\System.Xml.dll" /R:"C:\WINDOWS\assembly\GAC_MSIL\System.Web.Mobile\2.0.0.0__b03f5f7f11d50a3a\System.Web.Mobile.dll" /R:"C:\WINDOWS\assembly\GAC_32\System.Data\2.0.0.0__b77a5c561934e089\System.Data.dll" /R:"C:\WINDOWS\assembly\GAC_MSIL\System\2.0.0.0__b77a5c561934e089\System.dll" /out:"C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files\admin\2b225bde\d930a7d9\App_Web_zyz8oacb.dll" /debug- /optimize+ /win32res:"C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files\admin\2b225bde\d930a7d9\zyz8oacb.res" /w:4 /nowarn:1659;1699  "C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files\admin\2b225bde\d930a7d9\App_Web_zyz8oacb.0.cs" "C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files\admin\2b225bde\d930a7d9\App_Web_zyz8oacb.1.cs"
    Microsoft (R) Visual C# 2005 编译器 版本 8.00.50727.42
    用于 Microsoft (R) Windows (R) 2005 Framework 版本 2.0.50727
    版权所有 (C) Microsoft Corporation 2001-2005。保留所有权利。e:\ASPNET\Admin\UpLoadPic.aspx(63,122): error CS1010: 常量中有换行符
    e:\ASPNET\Admin\UpLoadPic.aspx(63,124): error CS1513: 应输入 } 
      

  13.   

    应该没有错啊
    Response.Write("<script language='javaScript'>window.opener.document.myform.pic.value='"+ newfile +"'</script>");
      

  14.   


    哈哈,要加回车换行的!!
    string strScript= "<script>" + "\n" + "window.opener.document.myform.picurl.value='"+newfile +"';" + </script>";
    Response.Write ( strScript );
      

  15.   

    Sorry少了一个引号:
    string strScript= "<script>" + "\n" + "window.opener.document.myform.picurl.value='"+newfile +"';" + "</script>";
    Response.Write ( strScript );
      

  16.   

    "<script>window.opener.document.myform.picurl.value='"+newfile +"'</script>"
    这段代码什么意思,看来是你不是很明白
    这个是脚本语言,window.opener.document.....是这个只能在客户端实现,你用
    <script runat="server">....</script>怎么可能呢
      

  17.   

    是呀!<script runat="server">...</script>
    你要在客户端显示,当然不能加在这里。
    你要用: Page.RegisterClientScriptBlock这个方法!!
    public void jsFunction(System.Web.UI.Page page)
    {
      string jscriptString = "<script language='javascript'>window.opener.document.myform.picurl.value='"+newfile +"';</script>";
      page.RegisterClientScriptBlock("testScript", jscriptString );
      

  18.   

    不放在<script runat="server">...</script>里
    那我要怎么判断在成功上传的时候执行那个方法
      

  19.   

    你没明白我们的意思 ,你是要放在<script runat="server">...</script>里
    伪码:
    if 上传成功 
    {
       newfile = "上传文件名";
       jsFunction( this.page );
    }
      

  20.   

    客户端如果用到了 C# 脚本,就需要每个运行的客户端装 .Net Frame, 现在的环境很难达到,所以一般在客户端脚本只用 JavaScript.