MVC与DWZ整合中部分问题的解决
1、错误提示距离太远
2、正确与错误时返回JSON(即:如何不出现打开新页显示JSON字串)
3、打开新页后“数据加载中,请稍候”关不掉
4、如何正常的分页,同时如果有查询结果时分页也要有效
5、关闭弹出的对话框后出现半透明黑色框
6、DWZ使用<input type="file">上传文件返回JSON串IE无法解析问题
上传的页面的form中如果加上onsubmit = "return validateCallback(this, dialogAjaxDone)"是无法实现文件上传的,接收到的只能是null,所以需要换一种方式,即:
onsubmit="return iframeCallback(this,dialogAjaxDone);
[HttpPost]
[Description("接收商户标题图片")]
public string UploadTitle(HttpPostedFileBase upImg, string id)
{
int MaxSize = ; // 最大上传大小,默认是0.5M
string newFile = "";
string ext = "";
string fn = "";
string tmp = "";
try
{
//HttpFileCollectionBase fc = Request.Files;
//HttpPostedFileBase f = Request.Files[0];
if (upImg.ContentLength > MaxSize || upImg.ContentLength == )
{
tmp = "{ \"statusCode\" : \"200\", " +
"\"message\" : \"上传失败!文件大小不正确,必须是在0字节以上,0.5M字节以内\"," +
"\"navTabId\" : \"\"," +
"\"rel\" : \"\"," +
"\"callbackType\" : \"closeCurrent\"," +
"\"forwardUrl\": \"\"" +
"}";
return tmp;
}
if (!Directory.Exists(Server.MapPath("~/Upload")))
Directory.CreateDirectory(Server.MapPath("~/Upload"));
ext = upImg.FileName.Substring(upImg.FileName.LastIndexOf("."));
fn = DateTime.Now.ToString("yyyMMddHHmmssfff");
newFile = Server.MapPath("~/Upload") + "\\" + fn + ext;
upImg.SaveAs(newFile);
int dbid = Convert.ToInt32(id);
var data = db.Seller.Where(p => p.id == dbid).FirstOrDefault();
if (data != null)
{
data.TitleJPG = "/Upload/" + fn + ext;
db.SaveChanges();
}
//AJAX不支持上传文件,所以用了隐藏iframe方式,但返回就不能是JSON格式,只能返回字符串格式
tmp = "{ \"statusCode\" : \"200\", " +
"\"message\" : \"修改成功\"," +
"\"navTabId\" : \"dlg_modiSeller\"," +
"\"rel\" : \"\"," +
"\"callbackType\" : \"closeCurrent\"," +
"\"forwardUrl\": \"\""+
"}";
return tmp; }
catch (Exception ex)
{
tmp = "{ \"statusCode\" : \"200\", " +
"\"message\" : \"上传图片失败\"," +
"\"navTabId\" : \"\"," +
"\"rel\" : \"\"," +
"\"callbackType\" : \"closeCurrent\"," +
"\"forwardUrl\": \"\"" +
"}";
return tmp;
} }
后台接收文件并按ID修改数据库
<form action="@Url.Action("UploadTitle", "Seller", new { id = ViewData["id"].ToString() })" method="post" enctype="multipart/form-data" class="pageForm required-validate" onsubmit="return iframeCallback(this,dialogAjaxDone);" >
<input type="file" name="upImg" id="upImg" style="width: 180px" />
<button type="submit">文件上传</button>
</form>
前台上传代码
注意点:前台的input控件名与后台接收的一致,即(HttpPostedFileBase upImg, string id)中的upImg必须与前台的一致,否则接收不到文件
MVC与DWZ整合中部分问题的解决的更多相关文章
- 在DWZ框架中整合kindeditor复文本框控件
今天上午在DWZ框架中整合kindeditor复文本框控件,发现上传图片是老是提示 “上传中,请稍候...”,上网查看别人说可能是文件路径问题,在想以前在其他项目中用这个控件一直没问题,到这里怎么会出 ...
- 转载 Spring、Spring MVC、MyBatis整合文件配置详解
Spring.Spring MVC.MyBatis整合文件配置详解 使用SSM框架做了几个小项目了,感觉还不错是时候总结一下了.先总结一下SSM整合的文件配置.其实具体的用法最好还是看官方文档. ...
- SpringMVC系列(十五)Spring MVC与Spring整合时实例被创建两次的解决方案以及Spring 的 IOC 容器和 SpringMVC 的 IOC 容器的关系
一.Spring MVC与Spring整合时实例被创建两次的解决方案 1.问题产生的原因 Spring MVC的配置文件和Spring的配置文件里面都使用了扫描注解<context:compon ...
- 调试SPRING MVC(或者整合SSH)的时候遇到了org/objectweb/asm/Type
调试SPRING MVC(或者整合SSH)的时候遇到了org/objectweb/asm/Type 解决方法1: 原因是Spring中的cglib-nodep-2.x.x.jar与Hibernate中 ...
- 【FreeMarker】Spring MVC与FreeMarker整合(二)
前一篇介绍了FreeMarker的基本使用,本例介绍Spring MVC与FreeMarker整合 不熟悉项目搭建,可参考 [FreeMarker]FreeMarker快速入门(一) 整合 1.新建S ...
- 在ASP.NET MVC 4 on Mono中使用OracleClient in CentOS 6.x的问题记录
在ASP.NET MVC 4 on Mono中使用OracleClient in CentOS 6.x的问题记录 前言 最近有个Web项目,业务功能不复杂,但是这个客户(某政府部门)有两个硬性要求:1 ...
- 【问题】Asp.net MVC 的cshtml页面中调用JS方法传递字符串变量参数
[问题]Asp.net MVC 的cshtml页面中调用JS方法传递字符串变量参数. [解决]直接对变量加引号,如: <button onclick="deleteProduct('@ ...
- 架构和模式的区别:三层架构和MVC在应用开发中的位置
架构是系统层面的,可以是多层架构,也可以是事件驱动架构,也可以是微服务架构. 模式是GUI应用的一种职责分离设计. 三层架构(包含多层架构)和 MVC模式(包含MVP, MVVM) 没什么关系,它们不 ...
- Asp.net MVC 4新项目中创建area的后续操作
Asp.net MVC 4新项目中创建area后,往往HomeController与area的HomeController路由发生混淆,需要手工设置一些地方避免mvc无法识别默认路由的状况. 无废话具 ...
随机推荐
- Unity3d利用opencv保存游戏视频
脚本MyVideoWriter.cs using UnityEngine; using System.Collections; using OpenCvSharp; using OpenCvSharp ...
- property
一.property用法 property(fget=None, fset=None, fdel=None, doc=None) -> property attribute fget is a ...
- net TreeView 递归
1.显示效果 2.数据insert脚本 insert into CITY(id,text,pid) values('1','城市',null)insert into CITY(id,text,pid ...
- 【python】GTK 例子
# encoding:utf-8 # box_multi_button_data.py import pygtk, gtk def destroy(widget, data=None): gtk.ma ...
- 6SQL SERVER视图/索引
一.视图 1.视图概念 ①视图是包含由一张或多张表的列组成的数据集.该表中的记录是由一条查询语句执行后所得到的查询结果所构成的. ②视图是一张虚拟表,它表示一张表的部分数据或多张表的综合数 据,其结构 ...
- Ceph剖析:数据分布之CRUSH算法与一致性Hash
作者:吴香伟 发表于 2014/09/05 版权声明:可以任意转载,转载时务必以超链接形式标明文章原始出处和作者信息以及版权声明 数据分布是分布式存储系统的一个重要部分,数据分布算法至少要考虑以下三个 ...
- [linux] 结构化命令-for
1 for命令 # for:迭代循环:默认空格为分隔符 for var in list do commands done 1.1 读取列表中的值 #!usr/bin/bash for test in ...
- 实战录 | 一起唠唠那些常见的DDoS攻击
<实战录>导语 云端卫士<实战录>栏目定期会向粉丝朋友们分享一些在开发运维中的经验和技巧,希望对于关注我们的朋友有所裨益.本期分享人为云端卫士系统架构师高鹏,将带来常见的DDo ...
- easyui datagird 列宽自适应
代码如下: onLoadSuccess: function (data) { var rows = data.rows; //得到行数据 var columnMaxCharacter = new Ar ...
- Twitter Bootstrap
Twitter Bootstrap是一个HTML/CSS/JS框架,适用于移动设备优先的响应式网页开发.主要涉及: HTML:为已有的H5标签扩展了自定义属性 data-* CSS : Reset + ...