上传预览 easyui部分控件获取focuse 表单验证
js:
$(document).ready(function () {
//$('#creater').combobox({
// url: '/VMS.UI/BindData/ScheamData?type=26',
// dataType: 'json'
//});
$('#education').combobox({
url: '/VMS.UI/BindData/ScheamData?type=26',
dataType: 'json'
});
$('#job').combobox({
url: '/VMS.UI/BindData/ScheamData?type=24',
dataType: 'json',
value: '专职'
});
$('#station').combobox({
url: '/VMS.UI/BindData/ScheamData?type=29',
dataType: 'json'
});
$('#org').combotree({
url: '/VMS.UI/BindData/OrgData',
dataType: 'json',
idFiled: 'IID',
textFiled:'OrgName',
onLoadSuccess: function () {
$('#org').combotree('tree').tree("collapseAll");
},
onSelect: function (node) {
$('#dept').combobox({
url: '/VMS.UI/BindData/GetDepartments?deptID=' + node.id,
dataType: 'json',
valueField: 'IID',
textField: 'DeptName'
});
}
});
$(function () {
$("#uploadpic").uploadPreview({
Img: "pic",
Width: 120,
Height: 120
});
});
function formValidate() {
var station = $('#station').combobox('isValid');
var name = $('#name').validatebox('isValid');
var cardNumber = $('#cardNumber').validatebox('isValid');
var mobilePhone = $('#mobilePhone').numberbox('isValid');
var org = $('#org').combotree('isValid');
var dept = $('#dept').combobox('isValid');
var drivingCertificate = $('input[name="DrivingCertificate"]').validatebox('isValid');
if (!station) {
$('#station').combobox().next('span').find('input').focus()
return false;
}
if (!name) {
$('#name').focus();
return false;
}
if (!cardNumber) {
$('#cardNumber').focus()
return false;
}
if (!mobilePhone) {
$('#mobilePhone').focus()
return false;
}
if (!org) {
$('#org').combobox().next('span').find('input').focus()
return false;
}
if (!dept) {
$('#dept').combobox().next('span').find('input').focus()
return false;
}
if (!drivingCertificate) {
$('input[name="DrivingCertificate"]').focus()
}
return true;
}
$('#save').click(function () {
if (formValidate()) {
$('#form_driverinfo').submit();
}
});
$('#clear').click(function () {
$.messager.confirm('确认对话框', '是否确定清空?', function (r) {
if (r) {
$('#form_driverinfo').form('reset');
}
});
});
});
MVC:
[HttpPost]
public ActionResult AddVehicleDriver(VehicleDrivers driver)
{
if (driver.Picture != null)
{
HttpPostedFileBase file = Request.Files["Picture"];
if (file != null)
{
driver.Picture = SaveImgAndGetPath(file);
}
}
}
/// <summary>
/// 保存图片并获取地址
/// </summary>
/// <param name="file">文件</param>
/// <returns>返回路径</returns>
private string SaveImgAndGetPath(HttpPostedFileBase file)
{
//设置文件名+获取文件扩展名
string imgName = DateTime.Now.ToString("yyyyMMddHHmmss") + new Random().Next(1000, 9999).ToString() + Path.GetExtension(file.FileName);
// 生成要存档的 文件路径和文件名
string serverPath = System.Web.HttpContext.Current.Server.MapPath("~");
string imgFullPath = Path.Combine(serverPath, @"UploadImage\driverImg\", imgName);
//string imgPath = Path.Combine(Server.MapPath("/UploadImage/driverImg/"), imgName);
//上传服务器
file.SaveAs(imgFullPath);
string imgRelativePath = System.Web.HttpContext.Current.Request.ApplicationPath + @"\UploadImage\driverImg\" + string.Format("{0}", imgName);
return imgRelativePath;
}
jqueryExtends:
jQuery.fn.extend({
uploadPreview: function (opts) {
var _self = this, _this = $(this);
opts = jQuery.extend({
Img: "ImgPr",
Width: 100,
Height: 100,
ImgType: ["gif", "jpeg", "jpg", "bmp", "png"],
Callback: function () {
}
}, opts || {});
_self.getObjectURL = function (file) {
var url = null;
if (window.createObjectURL != undefined) {
url = window.createObjectURL(file)
} else if (window.URL != undefined) {
url = window.URL.createObjectURL(file)
} else if (window.webkitURL != undefined) {
url = window.webkitURL.createObjectURL(file)
}
return url
};
_this.change(function () {
if (this.value) {
if (!RegExp("\.(" + opts.ImgType.join("|") + ")$", "i").test(this.value.toLowerCase())) {
alert("选择文件错误,图片类型必须是" + opts.ImgType.join(",") + "中的一种");
this.value = "";
return false
}
if ($.browser.msie) {
try {
$("#" + opts.Img).attr('src', _self.getObjectURL(this.files[0]))
} catch (e) {
var src = "";
var obj = $("#" + opts.Img);
var div = obj.parent("div")[0];
_self.select();
if (top != self) {
window.parent.document.body.focus()
} else {
_self.blur()
}
src = document.selection.createRange().text;
document.selection.empty();
obj.hide();
obj.parent("div").css({
'filter': 'progid:DXImageTransform.Microsoft.AlphaImageLoader(sizingMethod=scale)',
'width': opts.Width + 'px',
'height': opts.Height + 'px'
});
div.filters.item("DXImageTransform.Microsoft.AlphaImageLoader").src = src
}
} else {
$("#" + opts.Img).attr('src', _self.getObjectURL(this.files[0]))
}
opts.Callback()
}
})
}
});
上传预览 easyui部分控件获取focuse 表单验证的更多相关文章
- ux.plup.File plupload 集成 ux.plup.FileLis 批量上传预览
//plupload 集成 Ext.define('ux.plup.File', { extend: 'Ext.form.field.Text', xtype: 'plupFile', alias: ...
- ASP.NET工作笔记之一:图片上传预览及无刷新上传
转自:http://www.cnblogs.com/sibiyellow/archive/2012/04/27/jqueryformjs.html 最近项目里面涉及到无刷新上传图片的功能,其实也就是上 ...
- 模拟QQ心情图片上传预览
出于安全性能的考虑,目前js端不支持获取本地图片进行预览,正好在做一款类似于QQ心情的发布框,找了不少jquery插件,没几个能满足需求,因此自己使用SWFuplad来实现这个图片上传预览. 先粘上以 ...
- 用html5文件api实现移动端图片上传&预览效果
想要用h5在移动端实现图片上传&预览效果,首先要了解html5的文件api相关知识(所有api只列举本功能所需): 1.Blob对象 Blob表示原始二进制数据,Html5的file对象就继 ...
- 微信开发中使用微信JSSDK和使用URL.createObjectURL上传预览图片的不同处理对比
在做微信公众号或者企业微信开发业务应用的时候,我们常常会涉及到图片预览.上传等的处理,往往业务需求不止一张图片,因此相对来说,需要考虑的全面一些,用户还需要对图片进行预览和相应的处理,在开始的时候我使 ...
- 兼容好的JS图片上传预览代码
转 : http://www.codefans.net/articles/1395.shtml 兼容好的JS图片上传预览代码 (谷歌,IE11) <html xmlns="http:/ ...
- PHP WAMP 文件上传 及 简单的上传预览
...... 使用特殊的表单类型file, 主(上传)页面: <form action="chuli.php" method="post" enctype ...
- 单图上传预览(uploadpreview )
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- Jquery图片上传预览效果
uploadPreview.js jQuery.fn.extend({ uploadPreview: function (opts) { var _self = this, _this = $(thi ...
随机推荐
- vi 编辑器跳转到指定行数
如:跳转到25行 :set number :23
- 转:web_custom_request应用示例
LoadRunner提供的web_custom_request函数可以用于实现参数的动态生成.在LoadRunner中,web_reg_save_param和custom_request都常于处理参数 ...
- 3D动画效果照片墙demo
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF- ...
- Struts2--Global Result全局结果集
如果有很多action,有共同的result指向, 而且属于不同的包,那么可以继承上面的包, 然后写一个<global-results> 1. jsp显示文件: <ol> &l ...
- js原型对象,每个new出来的新对象都有独立的原型对象__proto__
刚才看一篇博文的时候, 动手测试了一下 JavaScript的原型链, 原型对象,发现每个构造器(赋给了某个 prototype ) new 出来的对象都有各自独立的原型对象 __proto__. p ...
- 【HighCharts系列教程】三、图表属性——chart
一.chart属性说明 Chart是HighCharts图表中主要属性,包括了图表区域的颜色.线条.高度.宽度.对齐.图表类型等诸多属性,也是HighCharts图表中必须配置的属性之一. 配置cha ...
- ural1752 Tree 2
Tree 2 Time limit: 1.0 secondMemory limit: 64 MB Consider a tree consisting of n vertices. A distanc ...
- Sencha Touch学习(一)
一.Ext的内部类结构示意图 基类Ext.Base 该类是所有通过Ext.define定义出来的类的基类. 是所有Ext类的基石. 来自为知笔记(Wiz)
- 强制修改mysql 中root的密码
/etc/init.d/mysqld stop (service mysqld stop )/usr/bin/mysqld_safe --skip-grant-tables另外开个SSH连接[ro ...
- SQL复习三(子查询)
子查询 子查询就是嵌套查询,即select中包含这select,如果一条语句中存在着两个,或者两个以上的select,那么就是子查询语句了. 子查询出现的位置 where后,作为条件的一部分: fro ...