自定义方法:

  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. OAF_OAF控件系列2 - LOV的实现(案例)

    2014-06-02 Created By BaoXinjian

  2. Linux中断 - GIC代码分析

    一.前言 GIC(Generic Interrupt Controller)是ARM公司提供的一个通用的中断控制器,其architecture specification目前有四个版本,V1-V4(V ...

  3. IDLE经常使用快捷键汇总

    IDLE(An Integrated DeveLopment Environment for Python)是Python自带的编译器,在刚開始学习的人,或写小程序,或用于验证的时候,经经常使用到!假 ...

  4. 正则表达式写法:Java和Js比较

    1.表示数字 Java:\\d              Js: \d 比如密码写法,Java中:(^[a-zA-Z\\d]{6,20}$),Js中:/^[a-zA-Z\d]{6,20}$/

  5. python bs4 + requests4 简单爬虫

    参考链接: bs4和requests的使用:https://www.cnblogs.com/baojinjin/p/6819389.html 安装pip:https://blog.csdn.net/z ...

  6. ubuntu中将某一程序设置为开机启动项的方法

    一.简要说明 Linux操作系统的引导加载程序(对个人电脑而言通常是LILO)开始,介绍Linux开机引导的步骤. 加载内核LILO启动之后,如果你选择了Linux作为准备引导的操作系统,第一个被加载 ...

  7. ANDROID L——Material Design具体解释(动画篇)

    转载请注明本文出自大苞米的博客(http://blog.csdn.net/a396901990),谢谢支持! Android L: Google已经确认Android L就是Android Lolli ...

  8. Spring Hello World

    1. 概述 Spring 框架是一个开源的 Java 平台,它最初是由 Rod Johnson 编写的,并且于 2003 年 6 月首次在 Apache 2.0 许可下发布. 1.1 依赖注入 1.2 ...

  9. [na][win]AD域组策略wifi自动配置

    http://wenku.baidu.com/link?url=MC950wliAZNeVUJ2M6Y1VTi5faqo7kG374fyBjW57r0qyLJkBZLg5ypiql4RFywQ8q7y ...

  10. ntp服务的细节全解析

    在linux里设置NTP服务并不难,但是NTP本身确是一个很复杂的协议. 你都了解细节么? 1. 时间和时区 date命令可显示时间与市区 [root@T_PV1_DB ~]# date Tue Fe ...