当前位置:编程学习 > C#/ASP.NET >>

一个有关uploadify的奇怪问题,求有经验的指导指导!!

先贴上代码:
前台代码 uploadify.aspx

<head runat="server">
    <title></title>
    <script src="uploadify/jquery-1.6.3.min.js" type="text/javascript"></script>
    <link href="uploadify/uploadify.css" rel="stylesheet" type="text/css" />
    <script src="uploadify/jquery.uploadify.js" type="text/javascript"></script>
    <script>
        $(document).ready(function () {
            $("#uploadify2").uploadify({
                'swf': 'uploadify/uploadify.swf',
                'uploader': 'uploadify.aspx',//传回该页面的后台处理
                'buttonText': '选择附件',
                'fileTypeDesc': 'FileType',
                'fileTypeExts': '*.doc;*.pdf;*.ceb;',
                'auto': false,
                'simUploadLimit': 1,
                'queueSizeLimit': 1,
                'removeCompleted': false,
                'multi': false,
                'onSelect': function (file) {
                    this.addPostParam("file_name", encodeURI(file.name));
                },
                'onUploadSuccess': function (file, data, response) {
                    $('#' + file.id).find('.data').html(' 上传完毕');
                    $(".cancel").css({ display: "none" });
                    //“第二处赋值”返回的name获取不到???为什么????
                    var name1 = document.getElementById("uName").value;
                    alert(name1);
                    HasMainText = 1;
                    $("#kongjian").show();
                    $("#mainText").show();
                    $("#zhengwen").hide();
                    MainTextFileName = file.name;
                }
            });
        })
    </script>
</head>
<body>
    <form id="form1" runat="server">
    <table>
        <tr>
            <td>
                附件上传:
            </td>
            <td>
                <div id="fileQueue2">
                </div>
                <input type="file" name="uploadify2" id="uploadify2" />
                <p class="operatorButton">
                    <a href="javascript:$('#uploadify2').uploadify('cancel', '*')">清空</a> | <a href="javascript:$('#uploadify2').uploadify('upload', '*')">
                        上传</a>
                </p>
            </td>
        </tr>
        <asp:HiddenField ID="HiddenFileName" runat="server" />
        <input id="uName" name="uName" type="hidden" value="<%=name %>" />
    </table>
    </form>
</body>


后台代码 uploadify.aspx.cs

public partial class uploadify : System.Web.UI.Page
{
    public string name;
    protected void Page_Load(object sender, EventArgs e)
    {
        HttpPostedFile file = Request.Files["Filedata"];
        string uploadPath = AppDomain.CurrentDomain.BaseDirectory + "UpLoadFiles\\";        
        DateTime date = DateTime.Now;
        string dt = date.ToString();
        dt = dt.Replace(" ", "-").ToString();
        dt = dt.Replace(":", "-").ToString();
        string GuidStr;
        //第一处赋值
        //name = "123";
        //此处name赋值前台可以得到值
        if (file != null)
        {
            GuidStr = Guid.NewGuid().ToString() + "-" + dt + "-" + file.FileName;
            //此处name赋值前台不可以得到值??????
            //第二处赋值
            //name = "123";
            //name = GuidStr;            
            HiddenFileName.Value = GuidStr;
            if (!Directory.Exists(uploadPath))
            {
                Directory.CreateDirectory(uploadPath);
            }
            file.SaveAs(uploadPath + GuidStr);
            //下面这句代码缺少的话,上传成功后上传队列的显示不会自动消失
            Response.Write("1");
        }
        else
        {
            //Response.Write("0");
        }
        //第三处赋值
        //name = "123";
        //此处name赋值前台可以得到值
    }
}


代码上传文档没有问题,我就是想在上传文档成功后将文件名传到前台去,我试了下在后台代码中有三处给name变量赋值,“第一处赋值”、“第三处赋值”赋值前台均能得到name变量的值,在“第二处赋值”是(也就是在if()中赋值时)前台返回的name为空!!!很奇怪,各位大神乘着等放假的愉快心情帮小弟来解决下嘞!!!! --------------------编程问答--------------------
救命! --------------------编程问答--------------------
引用 1 楼 u012465557 的回复:

救命!


你把文件名在后台在返回后台不久好了,你后台获取到文件名,

加入到JSON里面,前台得到这个JSON不久可以了!!!

不明白你纠结什么? --------------------编程问答--------------------
引用 2 楼 hou306010849 的回复:
Quote: 引用 1 楼 u012465557 的回复:


救命!


你把文件名在后台在返回后台不久好了,你后台获取到文件名,

加入到JSON里面,前台得到这个JSON不久可以了!!!

不明白你纠结什么?

我是获取文件名然后放在一个控件里读取的,纠结的是读不出来!!

新手对json不是很了解,网上看了下看的一头雾水!!
有没有简单点的后台传值前台的例子!!
补充:.NET技术 ,  ASP.NET
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,