这两天在做图片上传并显示的功能,之前就用过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_width: 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>

MVC3中 swfupload 按钮不显示 解决方案的更多相关文章

  1. iphone中button按钮显示为圆形解决

    iphone中button按钮显示为圆形解决: 添加样式: -webkit-appearance:button; 如果需要为直角: border-radius:0 在源码中添加如:style=&quo ...

  2. ViewModel在MVC3中的应用:一个view显示多个model

    在mvc3中,默认是一张数据表对应一个model,一个视图 view只显示一个model. 但是有些时候,我们一个视图上可能需要显示多个model的内容,即一个网页可能要展示多张表的信息,那怎么办呢, ...

  3. Vue 动态控制页面中按钮是否显示和样式

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  4. jQuery Uploadify在ASP.NET MVC3中的使用

    1.Uploadify简介 Uploadify是基于jQuery的一种上传插件,支持多文件.带进度条显示上传,在项目开发中常被使用. Uploadify官方网址:http://www.uploadif ...

  5. 点击datalist中Button按钮出现“回发或回调参数无效......”

        遇到问题: 回发或回调参数无效.在配置中使用 <pages enableEventValidation="true"/> 或在页面中使用 <%@ Page ...

  6. GEF-whole-upload教程中遇到的问题及解决方案

    最近在学习GEF开发,使用的是GEF-whole-upload这个教程.由于教程当时所使用的版本与本人使用的版本有一些差异,中间出现了不少问题,现在将解决方案分享给大家. 本人使用的Eclipse版本 ...

  7. 在SAP UI中使用纯JavaScript显示产品主数据的3D模型视图

    在Jerry写这篇文章时,通过Google才知道,SAP其实是有自己的3D模型视图显示解决方案的. 故事要从Right Hemisphere说起,这是一家专业的企业级2D/3D模型浏览及转换的软件供应 ...

  8. MVC项目中ExecutionTimeout不生效的解决方案

    我们做web服务器端开发时,经常会遇到一个需求场景,因为某些耗时处理造成页面的响应处理时间超长,技术角度就想能否给页面处理程序一个指定的超时时间,服务端处理程序执行时间超过这个指定的超时时间则中断处理 ...

  9. Word2013中制作按钮控件

    1.由于“开发工具”不经常用,所以在功能选项面板中没有“开发工具”这一栏.所以我们需要设置.在功能选项面板中选择“文件”,在跳转出来的版面中选择“选项”.

随机推荐

  1. poj 4045 (树形DP)

    先选一点为根节点找出所有父节点i到下面所有点距离和dp[i],该父节点下面有多少个点Node[i]. 然后求出所有节点的所有非子节点到该点的距离dp1[v]+=(dp1[u]+(dp[u]-dp[v] ...

  2. 教你50招提升ASP.NET性能(三):使用Microsoft的PDBs调试和分析外部的程序集和库

    (3)Use Microsoft’s PDBs to debug or profile external assemblies or libraries 招数3: 使用Microsoft的PDBs调试 ...

  3. Android的横竖屏切换

    android的横竖屏切换,也会发生不少问题. 1. 锁定屏幕方向,禁止切换: 在AndroidManifest.xml中的Activity参数中加上   android:screenOrientat ...

  4. delphi中使用webbrowser提交表单

    转自:http://blog.163.com/hehaifeng1984@126/blog/static/6900113620133504644998/ 我们以百度搜索为例,使用webbrowser组 ...

  5. [置顶] API相关工作的个人总结_工作中琐碎细节的总结二

    续接上篇,今晚又看了看大牛的书,再结合过往工作,总结如下: 1.弃用原理与删除原则做权衡. 2.正确性与易用性的把握. 3.不能因为过度的追求性能提升而违背API的设计原则. 4.兼容性不仅仅是表象的 ...

  6. iOS利用视频做起始页

    一个好的引导页会使得用户体验大大提升,利用视频来做,可以更简单的达到优雅的效果.使用MediaPlayer.framework框架下的AVPlayerLayer,它和Core Animation紧密地 ...

  7. 【jQuery插件】用jQuery Masonry快速构建一个pinterest网站布局(转)

    [jQuery插件]用jQuery Masonry快速构建一个pinterest网站布局 时间:2011年03月21日作者:愚人码头查看次数:29,744 views评论次数:25条评论 前段时间领导 ...

  8. QSqlQueryModel的实例操作

    QSqlQueryModel类为SQL的结果集提供了一个只读的数据模型,下面我们先利用这个类进行一个最简单的操作. 我们新建Qt4 Gui Application工程,我这里工程名为queryMode ...

  9. ie6下子元素撑大父元素

    今天遇到了一个问题.在给a元素定义hover并且增大尺寸时,IE6下该元素会把父元素撑大,而非IE浏览器则是表现为溢出效果不会撑大父元素(我想要的效果).解决IE6的这个问题是采用了一个定位+负边距的 ...

  10. WinServer 之 发布WebService后调用出现" The test form is only available for requests from the local machine. "

    当您尝试从远程计算机访问 Web 服务时,不会显示“调用”按钮.并且,您会收到以下错误信息: The test form is only available for requests from the ...