<input type="hidden" name="ImgUrl"  readonly="readonly">
<input type="file" id="imgurl_uploadify" />
<img id="imgurl_view" width="100" height="100"/>

最上面的那个input是自己添加的,主要用于获取上传的图片的路径,然后传给name为ImgUrl的表单元素,从而在提交的时候将其值传递,下面的两个控件是uploadify上传图片控件要用的

下面是jquery上传代码:

@section scripts{
<script type="text/javascript">
$(function () {
//上传图片
$("#imgurl_uploadify").uploadify({
'queueSizeLimit': 1, //上传的数量
'uploader': '/HttpHandler/UploadifyHandler.ashx', //网站中的UploadifyHandler.ashx文件地址
'swf': '/Content/js/plugins/uploadify/uploadify.swf', //该文件在项目中的位置
'onUploadSuccess': function (file, data, response) { //这里的data是从UploadifyHandler.ashx文件获取过来的netPath
//下面的这句话是将上传的图片的url赋值给img控件的src属性
$('#imgurl_view').attr('src', data);
//这句话是将上传的图片的url赋值给input控件的value属性,从而提交表单的时候会获取到该name为ImgUrl的input控件的value值,这里的WebUrl是Http://localhost:2551
$("input[name='ImgUrl']").attr('value', data.replace('@System.Configuration.ConfigurationManager.AppSettings["WebUrl"]', ''));
},
'onQueueComplete': function () {
},
//检测FLASH失败调用
'onFallback': function () {
alert("您未安装FLASH控件,无法上传图片!请安装FLASH控件后再试。");
},
//载入时触发,将flash设置到最小
'onInit': function () {
$(".uploadify-queue").hide();
}
}); })
</script>
}

下面再看看图片上传时的路径:

public void ProcessRequest(HttpContext context)
{
HttpPostedFile file = context.Request.Files["Filedata"];

//带net的路径变量都是网络路径;带upload的路径变量都是本地服务器路径,即保存到本地的路径

//WebUrl=http://localhost:2551,显示图片的时候是找此路径的
var netRoot = System.Configuration.ConfigurationManager.AppSettings["WebUrl"];
//WebPath=D:\项目-----------公司--代码\Linkin2\Linkin.Web,是将其上传到Web项目中,如果不加这句的是默认保存到Manager里了
var uploadRoot = System.Configuration.ConfigurationManager.AppSettings["WebPath"]; var strogeFolder = "/Upload/Uploadify"; var netPath = string.Format("{1}/{0}/", DateTime.Now.ToString("yyyy/MM/dd"), strogeFolder);
//下面这种写法是保存到linkin.Manager项目下的文件夹下了,但是现在要保存到Web下
//var uploadPath = HttpContext.Current.Server.MapPath(netPath);
var uploadPath = string.Format("{0}/{1}/{2}/", uploadRoot, strogeFolder, DateTime.Now.ToString("yyyy/MM/dd")); if (file != null)
{
if (!Directory.Exists(uploadPath))
{
Directory.CreateDirectory(uploadPath);
} var fileName = string.Format("{0}{1}", IDHelper.Id32, file.FileName.Substring(file.FileName.IndexOf('.'))); netPath = string.Format("{2}{0}{1}", netPath, fileName, netRoot);
uploadPath = string.Format("{0}{1}", uploadPath, fileName); file.SaveAs(uploadPath);
//下面这句代码缺少的话,上传成功后上传队列的显示不会自动消失
context.Response.Write(netPath);
}
else
{
context.Response.Write("0");
}
}

JQuery之replace以及给控件赋值的更多相关文章

  1. Jquery给input[type=radio] 控件赋值

    setobject: function (data, scope, win) { //data jsoon数据, scope,一般为form的id,win 窗口对象,如果在当前window win=n ...

  2. 页面单击按钮弹出modaldialog然后调用ajax处理程序获取数据,给父级页面控件赋值

    <%@ Page Language="C#" AutoEventWireup="true" CodeFile="RefTopicList.asp ...

  3. jquery messagetip信息语提示控件

    编写原因: 作为提示框,jquery有个messagebox的控件,也就是弹出的提示框.但这个控件如果不是用在需要确认的时候,单单警告提示.消息提示.失败提示时,用户还需要去点下确认,有时这操作还是挺 ...

  4. jquery datepicker-强大的日期控件

    在web开发中,总会遇到需要用户输入日期的情况.一般都是提供一个text类型的input供用户输入日期.然而,这种方式,开发人员必须对用户输入的日期进行验证,判断其合法性.除此之外,让用户输入日期也是 ...

  5. jQuery里面的datepicker日期控件默认是显示英文的,如何显示中文或其他语言呢?

    jQuery里面的datepicker日期控件默认是显示英文的,如何让他显示中文或其他呢? [官方的写法]: (1)引入JS文件: <script type="text/javascr ...

  6. Silverlight Visifire控件 .net后台控制aspx页面控件的显示与隐藏,动态给控件赋值,选定默认值的设定

    .net后台代码: 控件的显示与隐藏: this.dateStart.Visibility = Visibility.Collapsed;//不显示控件 this.dateYear.Visibilit ...

  7. 用js给html控件赋值

      用js给html控件赋值 <script> window.onload=function setValue()//在页面加载时赋值 { document.getElementById( ...

  8. WPF线程中获取控件的值和给控件赋值

    WPF中使用线程操作控件,按平常的操作方法操作的话会报异常:调用线程无法访问此对象,因为另一个线程拥有该对象.所以我们要使用Dispatcher类的BeginInvoke()与Invoke()方法.B ...

  9. JS给html控件赋值

    <html> <head> <title> JS给html控件赋值 </title> <script language="javascr ...

随机推荐

  1. can't set blob value on that column

    MySQL_Prepared_Statement::setBlob: can't set blob value on that column, MySQL error code:0, SQLState ...

  2. C++学习笔记(二)之数组

    数组作形参时,实际传入数组首地址 void print(const int*) void print(const int []) ]) 三种方法等价

  3. Windows Server 2008不能Ping改为允许的方法

    用了Windows Server 2008朋友肯定都知道,2008在很多设置方面与2003不同,尤其在安全上进行了加强,例如:默认情况下Windows 2008是不允许PING的,那么如何打开允许PI ...

  4. R语言学习 - 热图绘制heatmap

    生成测试数据 绘图首先需要数据.通过生成一堆的向量,转换为矩阵,得到想要的数据. data <- c(1:6, 6:1, 6:1, 1:6, (6:1)/10, (1:6)/10, (1:6)/ ...

  5. Moving Tables POJ - 1083 (思维)

    题目大意 在一层楼上推桌子,每个空间一次只能推1种桌子,且消耗十分钟.可以同时推多个桌子,但是他们所占的空间不能是相交的如图 解法 真的很考验思维能力,首先考虑到这个走廊是有两排的,我瞬间想到了宿舍楼 ...

  6. C++异常:exception

    基本知识 下图表示了标准异常的继承关系 exception是所有标准异常的基类,自定义异常也需要继承exception,如下例: #include "pch.h" #include ...

  7. Java生成PDF文件(转)

    原文地址:https://www.cnblogs.com/shuilangyizu/p/5760928.html 一.前言 前几天,做ASN条码收货模块,需要实现打印下载收货报表,经一番查找,选定iT ...

  8. 洛谷 1823 [COI2007] Patrik 音乐会的等待

    [题解] 维护一个单调栈即可. 但是因为有相同身高的存在,所以要稍微考虑下相同身高的处理.因为这个卡了一下下QAQ... #include<cstdio> #include<algo ...

  9. Python基础—面向对象(进阶篇)

    通过上一篇博客我们已经对面向对象有所了解,下面我们先回顾一下上篇文章介绍的内容: 上篇博客地址:http://www.cnblogs.com/phennry/p/5606718.html 面向对象是一 ...

  10. Codeforces 158B (数学)

    B. Mushroom Scientists time limit per test 2 seconds memory limit per test 256 megabytes input stand ...