自定义方法:

  1. (function($) {
  2. $.extend($, {
  3. //获取下标,删除时使用
  4. getArrayIndex :  function (array,value) {
  5. var index = -1;
  6. var length = array.length;
  7. for (var i = 0; i < length; i++) {
  8. if (array[i].id == value.id) {
  9. index = i;
  10. break;
  11. }
  12. }
  13. return index;
  14. } ,
  15. removeValue : function (array,value){
  16. var index = $.getArrayIndex(array,value);
  17. if(index < 0) return array;
  18. array.splice(index,1);
  19. return array;
  20. }
  21. });
  22. })(jQuery);
  23. function checkExist(array,node){
  24. var id = node.id;
  25. var flag = false;
  26. for(var i = 0;i<array.length; i++){
  27. var row = array[i];
  28. if(row.id == id){
  29. flag = true;
  30. break; //中断循环
  31. }
  32. }
  33. return flag;
  34. }
  35. Array.prototype.getIndexByValue= function(value)
  36. {
  37. var index = -1;
  38. for (var i = 0; i < this.length; i++)
  39. {
  40. if (this[i] == value)
  41. {
  42. index = i;
  43. break;
  44. }
  45. }
  46. return index;
  47. };
  48. //在数组中获取指定值的元素索引
  49. Array.prototype.removeValue= function(value)
  50. {
  51. var index = this.getIndexByValue(value);
  52. var s = this.splice(index,1);
  53. return s;
  54. }  ;
  1. String.prototype.startsWith = function (substring) {
  2. var reg = new RegExp("^" + substring);
  3. return reg.test(this);
  4. };
  5. String.prototype.endsWith = function (substring) {
  6. var reg = new RegExp(substring + "$");
  7. return reg.test(this);
  8. };
  9. String.prototype.trim = function(){
  10. var reg = /[\s\n\r]+/g;
  11. return this.replace(reg, "");
  12. }
  1. /**
  2. * 序列化元素,返回JSON对象
  3. * 参数:flag 空元素是否系列化成空字符串
  4. */
  5. $.fn.toJson = function (flag) {
  6. var json = {};
  7. var fields = this.serializeArray();
  8. $.each(fields, function () {
  9. if (json[this.name]) {
  10. if (!json[this.name].push) {
  11. json[this.name] = [json[this.name]];
  12. }
  13. if (flag || (!flag && this.value != "")) {
  14. json[this.name].push(this.value || "");
  15. }
  16. } else {
  17. if (flag || (!flag && this.value != "")) {
  18. json[this.name] = this.value || "";
  19. }
  20. }
  21. });
  22. return json;
  23. };

其他优化方法:

  1. function comboboxInit(obj,lookupType,form,defaultValue,wid){
  2. var _obj = $('#'+obj);
  3. if('' != form  && typeof form != 'undefined'){
  4. _obj = $("#"+form).find("#"+obj);
  5. }
  6. if('' == wid || typeof wid == 'undefined'){
  7. wid = "150";
  8. }
  9. _obj.combobox({
  10. required:true,
  11. width:wid,
  12. valuefield:'value',
  13. textField:'text',
  14. panelHeight:'auto',
  15. url: root + 'esbService/lookupValComBox.json?lookupType='+lookupType,
  16. editable:false,
  17. onLoadSuccess:function(){
  18. if('' != defaultValue  && typeof defaultValue != 'undefined'){
  19. _obj.combobox('select',defaultValue);
  20. }else{
  21. _obj.combobox('select','');
  22. }
  23. }
  24. });
  25. }
  26. function toggleSenior(but) {
  27. var check = false;
  28. if ($(but).attr("checked") == "checked") {
  29. check = true;
  30. }
  31. var rowHeight = 0;
  32. $(but).parents("form:first").find("tr.advancedCondiction").each(
  33. function (i, n) {
  34. rowHeight += 28;
  35. if (check) {$(n).show();}
  36. else {$(n).hide();}
  37. });
  38. var $layout = $(but).parents(".easyui-layout:first");
  39. var panelHeight = $layout.layout("panel", "north").panel("options").height;
  40. if (check) {
  41. panelHeight += rowHeight;
  42. } else {
  43. panelHeight -= rowHeight;
  44. }
  45. $layout.layout("panel", "north").panel("resize", {height: panelHeight});
  46. $layout.layout("resize");
  47. if(!check){
  48. clearAdvanced();
  49. }
  50. }
  51. function doSearch(form){
  52. var $fm = $(form);
  53. var fields =$('#queryForm').serializeArray();
  54. var params = $fm.datagrid('options').queryParams;
  55. $.each( fields, function(i, field){
  56. params[field.name] = field.value;
  57. });
  58. $fm.datagrid('reload');
  59. }
  60. function resetBtn(formId){
  61. $(formId).find("input[type='text']").each(function(){
  62. $(this).val("");
  63. });
  64. $('#method').combobox('select','');
  65. if($('#applicationId').length > 0){
  66. $('#applicationId').combobox('select','');
  67. }
  68. }
  69. 日期:
  70. 1、
  71. formatter:function(val,rec){
  72. return formattime(val);
  73. }
  74. function formattime(val) {
  75. var date = new Date(val);
  76. var tmp = trimDate(date.getFullYear())
  77. + '-' + trimDate(date.getMonth() + 1)
  78. + '-' + trimDate(date.getDate())
  79. + " "+trimDate(date.getHours())
  80. + ":"+trimDate(date.getMinutes())
  81. + ":"+trimDate(date.getSeconds());
  82. return tmp;
  83. }
  84. function trimDate(tmp){
  85. return parseInt(tmp) < 10 ? "0"+tmp : tmp;
  86. }
  87. 2、
  88. /**
  89. * jackson转换JSON时格式化日期的标注
  90. *
  91. */
  92. public class JsonDateSerializer extends JsonSerializer<Date> {
  93. private static DateFormat dateFormat = new SimpleDateFormat(
  94. "yyyy-MM-dd HH:mm:ss");
  95. public void serialize(Date date, JsonGenerator gen, SerializerProvider provider)
  96. throws IOException, JsonProcessingException {
  97. gen.writeString(dateFormat.format(date));
  98. }
  99. }

EasyUI项目中的自定义JS的更多相关文章

  1. win7,vs2010,asp.net项目中修改外部js文件,在调试时加载的还是旧文件

    win7,vs2010,asp.net项目中修改外部js文件,在调试时加载的还是旧文件 我杀过 w3wp.exe和asp.net_state的进程,重启 iis admin的服务,都还是不行. 只是把 ...

  2. 在 Ionic2 TypeScript 项目中导入第三方 JS 库

    原文发表于我的技术博客 本文分享了在Ionic2 TypeScript 项目中导入第三方 JS 库的方法,供参考. 原文发表于我的技术博客 1. Typings 的方式 因在 TypeScript 中 ...

  3. VS Code项目中共享自定义的代码片段方案

    VS Code项目中共享自定义的代码片段方案 一.问题背景 项目中注释风格不统一,如何统一注释风格 一些第三方组件库名称太长,每次使用都需要找文档,然后复制粘贴 部分组件库有自己的Snippets插件 ...

  4. 在项目中如何自定义的Eslint配置

    一.设置js风格的缩进为4个空格 在你的前端项目中找到.eslintrc.js文件,如图 module.exports = { root: true, parserOptions: { parser: ...

  5. 1.在项目中使用D3.js

    在项目中使用D3.js D3.js(全称:Data-Driven Documents)是一个基于数据操作文档的JavaScript库.D3帮助您使用HTML.SVG和CSS使数据生动起来.D3对web ...

  6. vue2项目中引用外部js文件

    vue2项目目录如下(utils文件夹是自己手工建的,然后在utils里新建js文件): 使用import导入文件时,注意路径,路径不对会报错: 导入之后使用外部js函数时,直接写导入时的名字加小括号 ...

  7. 在VC项目中使用自定义资源

    这是我看到的比较实用性的技巧,分享给大家 一.前言 在VC环境中除了我们所常用的Dialog.Menu和Bitmap等标准资源类型之外,它还支持自定义资源类型(Custom Resource),我们自 ...

  8. 在ASP.NET MVC3项目中,自定义404错误页面

    在Web开发中,用户体验是至关重要的,一个友好的网站自然少不了自定义404错误页面. 让笔者为大家介绍404错误页面在ASP.NET MVC3项目中的配置: 第一步,在项目的Web.config文件中 ...

  9. 在vue项目中使用canvas-nest.js,报parameter 1 is not of type 'Element'

    canvas-nest.js是一款轻量的网页特效,如图: github地址:https://github.com/hustcc/canvas-nest.js 在普通的html项目中,只要将<sc ...

随机推荐

  1. Unix域套接字简介

    在Linux系统中,有很多进程间通信方式,套接字(Socket)就是其中的一种.但传统的套接字的用法都是基于TCP/IP协议栈的,需要指定IP地址.如果不同主机上的两个进程进行通信,当然这样做没什么问 ...

  2. Python hex() 函数

    描述 hex() 函数用于将10进制整数转换成16进制整数. 语法 hex 语法: hex(x) 参数说明: x -- 10进制整数 返回值 返回16进制整数. 实例 以下实例展示了 hex 的使用方 ...

  3. 关于PFM工作模式的一些资料总结

    一.PFM模式 为什么升压中用的多呢(http://bbs.eetop.cn/thread-357181-1-1.html) 1.PFM 对于Boost Converter来说可以把PWM固有的右半平 ...

  4. spring mvc 依赖包

    <dependency> <groupId>org.springframework</groupId> <artifactId>spring-aop&l ...

  5. Creating the Help Page in ASP.NET Web API

    Introduction In this article we will define the process of creating the help page in the ASP .NET We ...

  6. jetty上传文件的时候报错显示文件过大

    这个时候我们需要修改jetty的参数文件 cd /data/java_web_app/news23456/etc vim jetty.xml 找到这一行 <Configure id=" ...

  7. vim:隆重推荐括号补全插件--auto-pairs

    太好用了,括号相关的各种麻烦都一一解决,剩下的就是熟练,熟练,在熟练了.呵呵 连教程都做得这么好,先放这里,以后慢慢翻译. Auto Pairs Insert or delete brackets, ...

  8. Effective JavaScript Item 46 优先使用数组而不是Object类型来表示有顺序的集合

    本系列作为Effective JavaScript的读书笔记. ECMAScript标准并没有规定对JavaScript的Object类型中的属性的存储顺序. 可是在使用for..in循环对Objec ...

  9. zabbix应用之Low-level discovery监控磁盘IO

    参考文章: http://qicheng0211.blog.51cto.com/3958621/1599776/ zabbix自带的"Template OS Linux"模板支持监 ...

  10. 黑客编程教程(十三)多线程DOS程序

    DOS基本原理相信大家都已经很熟悉了,DOS工具大家也用的很熟悉.在群里 经常有人说什么时候去DOS什么东西. 现在我们就自己编写一个DOS工具. #include <winsock2.h> ...