zoukankan      html  css  js  c++  java
  • MVC3中 swfupload 按钮不显示 解决方案

    这两天在做图片上传并显示的功能,之前就用过swfupload,觉得很不错,之前是用asp.net webform做的,这次的项目是用asp.net MVC3来做,视图引擎用的是Razor。

    将js文件引入到项目中后发现,上传图片的按钮不显示,于是乎求助于搜索引擎,发现很多人都有这个问题。很多人给出的解决方案都是将flash_url的路径改为以@开头的。

    我照做,结果还是不行,就这个问题磨蹭了很长时间。在不经意间发现了<%=Session.SessionID%>.是不是这个问题呢?

    于是将这个改为@Session.SessionID,按钮可以显示了,我这个项目的问题就是出在不同的视图引擎,支持的语言不一样。

    在Razor的视图引擎中,服务端代码不要出现<%%>.希望可以帮到大家。

     <script src="@Url.Content("~/Content/swfupload/swfupload.js")" type="text/javascript"></script>
        <script src="@Url.Content("~/Content/swfupload/handlers.js")" type="text/javascript"></script>
        <script type="text/javascript">
            var swfu;
            $(function () {
                swfu = new SWFUpload({
                    //Backend Settings
                    upload_url: "/Code/UploadNewsImg.ashx",
                    post_params: {
                        "ASPSESSID": "@Session.SessionID"
                    },
    
                    // File Upload Settings
                    file_size_limit: "2 MB",
                    file_types: "*.jpg;*.gif;*.png",
                    file_types_description: "JPG Images",
                    file_upload_limit: "0",    // Zero means unlimited
    
                    file_queue_error_handler: fileQueueError,
                    file_dialog_complete_handler: fileDialogComplete,
                    upload_progress_handler: uploadProgress,
                    upload_error_handler: uploadError,
                    upload_success_handler: function (file, serverData) {
                        var fields = serverData.split(":");
                        if (fields[0] == "ok") {
                            // Get the editor instance that we want to interact with.
                            $("#perimage").attr("src", fields[1]);
                            // Check the active editing mode.
                            //alert(fields[1]);
                        }
                        else if(fields[0]=="nook")
                        {
                            alert("图片必须小于50kb");
                        }
                        else if (fields[0] == "error") {//良好的编程素养!《一个程序员的自我修养》
                            alert("上传失败" + fields[1]);
                        }
                        else {
                            alert("未知的服务端返回");
                        }
                    },
                    upload_complete_handler: uploadComplete,
    
                    // Button settings
                    button_image_url: '@Url.Content("~/Content/swfupload/images/XPButtonNoText_160x22.png")',
                    button_placeholder_id: "spanButtonPlaceholder",
                    button_ 160,
                    button_height: 22,
                    button_text: '<span class="button">选择图片<span class="buttonSmall">(2 MB Max)</span></span>',
                    button_text_style: '.button { font-family: Helvetica, Arial, sans-serif; font-size: 14pt; } .buttonSmall { font-size: 10pt; }',
                    button_text_top_padding: 1,
                    button_text_left_padding: 5,
    
                    //Flash Settings
                    flash_url: '@Url.Content("~/Content/swfupload/swfupload.swf")', // Relative to this file
                    flash9_url: '@Url.Content("~/Content/swfupload/swfupload_FP9.swf")', // Relative to this file
    
    
                    custom_settings: {
                        upload_target: "divFileProgressContainer"
                    },
    
                    //Debug Settings
                    debug: false
                });
    
            });
            function SF_DEL(){
                $.post("/Code/DelImg.ashx", { userid: $("#UserId").val() }, function (data) {
                    if(data=="OK")
                    {
                        $("#perimage").attr("src", "/Content/images/defaultPhoto.gif");
                    }
                }, "text");
            }
        </script>
    View Code
  • 相关阅读:
    深入剖析C#的多态
    .NET多线程编程:多任务和多线程
    .Net类库中实现的HashTable
    用C#编写ActiveX控件
    用微软.NET架构企业解决方案 学习笔记(四)业务层
    SQL事务
    WCF基础知识问与答
    在.NET环境中使用单元测试工具NUnit
    圣殿骑士博客转载系列
    系统架构师学习笔记_第十二章
  • 原文地址:https://www.cnblogs.com/zlzly/p/3478228.html
Copyright © 2011-2022 走看看