自己用的jquery经常用的工具command
var Cmd = {
Entity: {
QueryString: {},
},
RootPath: function () {
var pathName = window.location.pathname.substring(1);
var webName = pathName == '' ? '' : pathName.substring(0, pathName.indexOf('/'));
if (webName != "" && webName.toLowerCase() != "web_html") {
return window.location.protocol + '//' + window.location.host + '/' + webName;
} else {
return window.location.protocol + '//' + window.location.host;
}
},
//======异步方法=====
Ajax: function (url, data, success, error) {
if (error) {
$.ajax({
type: "Post",
url: url,
dataType: "json",
data: data,
success: success,
//error: error
});
} else {
$.ajax({
type: "Post",
url: url,
dataType: "json",
data: data,
success: success,
error: function (XmlHttpRequest, textStatus, errorThrown) {
// alert(XmlHttpRequest.responseText);
}
});
}
},
//=====同步方法====
AjaxAsync: function (url, data) {
var result;
$.ajax({
type: "post",
url: url,
data: data,
// cache: false,
async: false,
dataType: "json",
success: function (obj) {
result = obj;
}
});
return result;
},
//将后台时间转换为正常时间显示
FormatTime: function (time) {
var time2 = JSON.stringify(time);
var date = new Date(parseInt(time2.substr(7, 13)));
return date.format("yyyy-MM-dd HH:mm:ss");
},
//将后台时间转换为正常时间显示
FormatMinute: function (time) {
var time2 = JSON.stringify(time);
var date = new Date(parseInt(time2.substr(7, 13)));
return date.format("yyyy-MM-dd HH:mm");
},
FormatDataTime: function (time) {
var time2 = JSON.stringify(time);
var date = new Date(parseInt(time2.substr(7, 13)));
return date.format("yyyy-MM-dd");
},
FormatDataMonth: function (time) {
var time2 = JSON.stringify(time);
var date = new Date(parseInt(time2.substr(7, 13)));
return date.format("yyyy-MM");
},
//处理待html标签的数据公用方法
htmlTag: function (str) {
return str ? str.replace(/&((g|l|quo)t|amp|#39|nbsp);/g, function (m) {
return {
'<': '<',
'&': '&',
'"': '"',
'>': '>',
''': "'",
' ': ' '
}[m]
}) : '';
},
//将标签内容中标签替换掉
removeHTMLTag: function (str) {
str = str.replace(/<\/?[^>]*>/g, ''); //去除HTML tag
str = str.replace(/[ | ]*\n/g, '\n'); //去除行尾空白
str = str.replace(/ /ig, '');//去掉
return str;
},
SubStrLength: function (str, len) {
var strstring = (str == null ? "null" : str);
return (strstring.length > len ? strstring.substring(0, len) + "..." : strstring);
}
}; RequestURLParms = (function () {
var fn = function () {
};
fn.prototype.QueryString2 = function (val) {
var uri = window.location.search;
var re = new RegExp("" + val + "=([^&?]*)", "ig");
return ((uri.match(re)) ? (uri.match(re)[0].substr(val.length + 1)) : null);
} String.prototype.GetValue = function (parm) {
var reg = new RegExp("(^|&)" + parm + "=([^&]*)(&|$)");
var r = this.substr(this.indexOf("\?") + 1).match(reg);
if (r != null) return unescape(r[2]); return null;
} fn.prototype.QueryString = function (key) {
var url = location.href;
return url.GetValue(key);
} return new fn();
})(); Date.prototype.format = function (formatStr) {
var date = this;
/*
函数:填充0字符
参数:value-需要填充的字符串, length-总长度
返回:填充后的字符串
*/
var zeroize = function (value, length) {
if (!length) {
length = 2;
}
value = new String(value);
for (var i = 0, zeros = ''; i < (length - value.length) ; i++) {
zeros += '0';
}
return zeros + value;
};
return formatStr.replace(/"[^"]*"|'[^']*'|\b(?:d{1,4}|M{1,4}|yy(?:yy)?|([hHmstT])\1?|[lLZ])\b/g, function ($0) {
switch ($0) {
case 'd':
return date.getDate();
case 'dd':
return zeroize(date.getDate());
case 'ddd':
return ['Sun', 'Mon', 'Tue', 'Wed', 'Thr', 'Fri', 'Sat'][date.getDay()];
case 'dddd':
return ['Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday'][date.getDay()];
case 'M':
return date.getMonth() + 1;
case 'MM':
return zeroize(date.getMonth() + 1);
case 'MMM':
return ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'][date.getMonth()];
case 'MMMM':
return ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December'][date.getMonth()];
case 'yy':
return new String(date.getFullYear()).substr(2);
case 'yyyy':
return date.getFullYear();
case 'h':
return date.getHours() % 12 || 12;
case 'hh':
return zeroize(date.getHours() % 12 || 12);
case 'H':
return date.getHours();
case 'HH':
return zeroize(date.getHours());
case 'm':
return date.getMinutes();
case 'mm':
return zeroize(date.getMinutes());
case 's':
return date.getSeconds();
case 'ss':
return zeroize(date.getSeconds());
case 'l':
return date.getMilliseconds();
case 'll':
return zeroize(date.getMilliseconds());
case 'tt':
return date.getHours() < 12 ? 'am' : 'pm';
case 'TT':
return date.getHours() < 12 ? 'AM' : 'PM';
}
});
}; $(function () {
var url = location.href.replace("#", "");
var paraString = url.substring(url.indexOf("?") + 1, url.length).split("&");
for (var i = 0; j = paraString[i]; i++) {
Cmd.Entity.QueryString[j.substring(0, j.indexOf("=")).toLowerCase()] = j.substring(j.indexOf("=") + 1, j.length);
}
}); $(function () {
jQuery('input:text:first').focus();//直接定位到当前页面的第一个文本框 var $inp = jQuery('input:text');//所有文本框 $inp.bind('keydown', function (e) {
var key = e.which;
if (key == 13) {
e.preventDefault();
var nxtIdx = $inp.index(this) + 1;
jQuery(":input:text:eq(" + nxtIdx + ")").focus();
}
});
});
后台
public class SerializerHelp
{
public static byte[] JsonSerializerByte(object obj)
{
DataContractJsonSerializer dataContractJsonSerializer = new DataContractJsonSerializer(obj.GetType());
MemoryStream memoryStream = new MemoryStream();
dataContractJsonSerializer.WriteObject(memoryStream, obj);
byte[] array = new byte[memoryStream.Length];
memoryStream.Position = 0L;
memoryStream.Read(array, , (int)memoryStream.Length);
memoryStream.Close();
return array;
} public static string JsonSerializerStr(object obj)
{
byte[] bytes = SerializerHelp.JsonSerializerByte(obj);
return Encoding.UTF8.GetString(bytes);
} public static T JsonDeserialize<T>(string json) where T : class, new()
{
byte[] bytes = Encoding.UTF8.GetBytes(json);
return SerializerHelp.JsonDeserialize<T>(bytes);
} public static T JsonDeserialize<T>(byte[] bytes) where T : class, new()
{
MemoryStream stream = new MemoryStream(bytes);
T t = Activator.CreateInstance<T>();
DataContractJsonSerializer dataContractJsonSerializer = new DataContractJsonSerializer(t.GetType());
return (T)((object)dataContractJsonSerializer.ReadObject(stream));
}
}
public class RestAgent
{
private static byte[] InvokeRest(string address, string type, string param)
{
WebClient webClient = new WebClient();
webClient.Headers.Add("Content-Type:application/json; charset=utf-8");
webClient.Headers.Add("Accept-Language: zh-cn");
webClient.Headers.Add("Accept: */*");
webClient.Headers.Add(HttpRequestHeader.KeepAlive, "TRUE");
webClient.Headers.Add("Keep-Alive", "");
webClient.Headers.Add("Cache-Control: no-cache");
byte[] result;
if (type != null && type.ToUpper() == "POST")
{
if (param != null && param.Trim() != "")
{
byte[] bytes = Encoding.UTF8.GetBytes(param);
result = webClient.UploadData(address, bytes);
}
else
{
result = webClient.UploadData(address, null);
}
}
else
{
string s = webClient.DownloadString(address);
result = Encoding.UTF8.GetBytes(s);
}
return result;
} /// <summary>
/// 接口接收的数据转成代理对象
/// </summary>
/// <typeparam name="T">实体对象:例如:pro_UserInfo</typeparam>
/// <param name="address">接口地址:例如:www.testapi.com/user/getUserInfo</param>
/// <param name="type">请求类型:Get,Post</param>
/// <param name="param">请求的参数:Json转String,例如:"{\"UID\":\"abcdef\"}"</param>
/// <returns>Rest<pro_UserInfo></returns>
public static T InvokeRestObject<T>(string address, string type, string param) where T : new()
{
T t = (default(T) == null) ? Activator.CreateInstance<T>() : default(T);
byte[] array = RestAgent.InvokeRest(address, type, param);
T result;
if (array == null || Encoding.UTF8.GetString(array) == "")
{
result = t;
}
else
{
result = RestAgent.JsonDeserial<T>(array);
}
return result;
} /// <summary>
/// 接口接收的数据转成代理对象集合
/// </summary>
/// <typeparam name="T">实体对象:例如:pro_UserInfo</typeparam>
/// <param name="address">接口地址:例如:www.testapi.com/user/getUserInfo</param>
/// <param name="type">请求类型:Get,Post</param>
/// <param name="param">请求的参数:Json转String,例如:"{\"UID\":\"abcdef\"}"</param>
/// <returns>Rest<pro_UserInfo></returns>
public static List<T> InvokeRestListObject<T>(string address, string type, string param)
{
byte[] array = RestAgent.InvokeRest(address, type, param);
List<T> result;
if (array == null || Encoding.UTF8.GetString(array) == "")
{
result = null;
}
else
{
result = RestAgent.JsonDeserials<T>(array);
}
return result;
} /// <summary>
/// 接口接收的数据转成代理字符串
/// </summary>
/// <param name="address">接口地址:例如:www.testapi.com/user/getUserInfo</param>
/// <param name="type">请求类型:Get,Post</param>
/// <param name="param">请求的参数:Json转String,例如:"{\"UID\":\"abcdef\"}"</param>
/// <returns>"{\"UID\":\"abcdef\"}"</returns>
public static string InvokeRestString(string address, string type, string param)
{
byte[] bytes = RestAgent.InvokeRest(address, type, param);
return Encoding.UTF8.GetString(bytes);
} private static T JsonDeserial<T>(byte[] jsons)
{
MemoryStream memoryStream = new MemoryStream(jsons);
DataContractJsonSerializer dataContractJsonSerializer = new DataContractJsonSerializer(typeof(T));
T result = (T)((object)dataContractJsonSerializer.ReadObject(memoryStream));
memoryStream.Close();
return result;
} private static List<T> JsonDeserials<T>(byte[] jsons)
{
MemoryStream memoryStream = new MemoryStream(jsons);
DataContractJsonSerializer dataContractJsonSerializer = new DataContractJsonSerializer(typeof(List<T>));
List<T> result = (List<T>)dataContractJsonSerializer.ReadObject(memoryStream);
memoryStream.Close();
return result;
}
}
var entity = SerializerHelp.JsonDeserialize<Summary>(context.Request["Summary"]);
传图片
FileReader: function () { if (this.files.length > 0) {
$.showPreloader('上传中...');
var form = new FormData();
var filesize = 0;
for (var i = 0; i < this.files.length; i++) {
var file = this.files[i];
if (file.type != "image")
var reader = new FileReader();
reader.readAsDataURL(file);
reader.onload = function (e) {
//localStorage.File = this.result;
//location.href = "EditImage.html";
}
form.append("file_" + i, file);
filesize += file.size;
}
if (filesize > 4 * 1024 * 1024 || filesize <= 0) {
alert("您的图片过大或者不符合要求");
$.hidePreloader();
return;
}
var fileObj = file; // js 获取文件对象
var UploadUrl = Cmd.RootPath() + "/Handlers/Upload.ashx?Command=UploadFlie&phoneNum=" + localStorage.ls_phoneNum + ""; // 接收上传文件的后台地址
// FormData 对象
form.append("author", "volcano");// 可以增加表单数据
var xhr = new XMLHttpRequest();
xhr.open("post", UploadUrl, true);
xhr.onload = function (e) {
$.hidePreloader();
var file = JSON.parse(e.target.response);
//if (file.FilePaths[0]) {
};
xhr.send(form);
}
}
自己用的jquery经常用的工具command的更多相关文章
- JQuery --- 第一期 (初识jQuery, JQuery核心函数和工具方法)
个人学习笔记 初识jQuery 1.我的第一个JQuery <!DOCTYPE html> <html lang="en"> <head> & ...
- jQuery源代码学习_工具函数_type
jquery源代码学习_工具函数_type jquery里面有一个很重要的工具函数,$.type函数用来判断类型,今天写这篇文章,是来回顾type函数的设计思想,深入理解. 首先来看一下最终结果: 上 ...
- MAC 命令行工具(Command Line Tools)安装
不过升级后安装命令行工具(Command Line Tools)时发现官网没有clt的下载安装包了,原来改了,使用命令在线安装. 打开终端,输入命令:xcode-select --install 选择 ...
- jQuery晦涩的底层工具方法们
这里整理的是jQuery源码中一些比较晦涩难懂的.内部的.最底层的工具方法,它们多为jQuery的上层api方法服务,目前包括: jQuery.access jQuery.access: functi ...
- jquery源码分析-工具函数
jQuery的版本一路狂飙啊,现在都到了2.0.X版本了.有空的时候,看看jquery的源码,学习一下别人的编程思路还是不错的. 下面这里是一些jquery的工具函数代码,大家可以看看,实现思路还是很 ...
- jQuery源代码 解析一 工具方法
1. 外层沙箱以及命名空间$ 几乎稍微有点经验前端人员都这么做,为了避免声明了一些全局变量而污染,把代码放在一个"沙箱执行",然后在暴露出命名空间(可以为API,函数,对象): 2 ...
- JQuery $ $.extend(),$.fn和$.fn.extend javaScript对象、DOM对象和jQuery对象及转换 工具方法(utility)
一.为什么jquery前面要写$ Javascript没有package的概念,而作者又希望所有jQuery相关的API都能通过一个全局性的对象来容纳. 名为jQuery的全局变量就是这样一个对象,不 ...
- JavaScript1.6数组新特性和JQuery的几个工具方法
JavaScript 1.6 引入了几个新的Array 方法,具体的介绍见:New in JavaScript 1.6 .这些方法已经被写进了ECMA262 V5.现代浏览器(IE9/Firefox/ ...
- Ajax学习(二):模仿jQuery的Ajax封装工具
通过上一节的学习,基本了解Ajax的使用, 但是这样使用很麻烦,这里封装ajax为一个方法,作为一个ajax工具,传入相应参数就可以实现ajax的使用. 模仿jQuery的Ajax. 如下是jQuer ...
随机推荐
- GNU Radio Radar Toolbox
GNU Radio Radar Toolbox Install guide Change to any folder in your home directory and enter followin ...
- linux查看端口占用情况
今天要使用python写一个端口探测的小程序,以检测一些特定的服务端口有没有被占用,突然发现自己居然不知道在linux中如何查询端口被占用的情况,天呐,赶快学习一下.
- codevs1403 新三国争霸
题目描述 Description PP 特别喜欢玩即时战略类游戏,但他觉得那些游戏都有美中不足的地方.灾害总不降临道路,而只降临城市,而且道路不能被占领,没有保护粮草的真实性.于是他就研发了<新 ...
- 最新 Eclipse IDE下的Spring框架配置及简单实例
前段时间开始着手学习Spring框架,又是买书又是看视频找教程的,可是鲜有介绍如何配置Spring+Eclipse的方法,现在将我的成功经验分享给大家. 本文的一些源代码来源于码农教程:http:// ...
- sessionState详解
asp.net Session的默认时间设置是20分钟,即超过20分钟后,服务器会自动放弃Session信息. 当我们在asp.net程序中打开web.config的时候,可以看到一段如下的代码: A ...
- Elasticsearch Configuration 中文版
##################### Elasticsearch Configuration Example ##################### # This file contains ...
- java基础知识(六)日期处理
一.日期处理类 在 JDK 1.1 之前,类 Date 有两个其他的函数.它允许把日期解释为年.月.日.小时.分钟和秒值.它也允许格式化和解析日期字符串.不过,这些函数的 API 不易于实现国际化.从 ...
- .net一般处理程序(httphandler)实现文件下载功能
Handler文件代码如下: public class MDMExporterWeb : IHttpHandler { public void ProcessRequest(HttpContext c ...
- 渐进式框架、自底向上增量开发的vue
官网对vue.js的介绍是这样的: 一套构建用户界面的 渐进式框架.与其他重量级框架不同的是,Vue 采用自底向上增量开发的设计. 那么到底什么是渐进式框架.自底向上增量开发又是什么呢? 其实我觉得这 ...
- php获取用户 地区 、ip地址
header("Content-type: text/html; charset=utf-8"); function getCity($ip = '')//获取地区 { if($i ...