自定义方法:

  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. RMAN兼容性列表

    Target/Auxiliary Database RMAN Executable Catalog Database Catalog Schema 8.1.7.4 8.1.7.4 >=8.1.7 ...

  2. Win8.1设置ftp服务器并设定用户操作权限的详细教程

    http://wenku.baidu.com/link?url=VTDLnDa_yfQN9OldjVnYsOBf7UdIj76QjaLDyHP-I0A6iFEfzB8EyBf9uztwm2JDXlFL ...

  3. PO_PO接受入库时的接受方式详解(概念)

    2014-06-03 Created By BaoXinjian

  4. PLSQL_性能优化效能跟踪工具DBMS_PROFILER分析(案例)

    2014-06-01 Created By BaoXinjian

  5. Unix环境高级编程(十一)线程

    一个进程在同一时刻只能做一件事情,线程可以把程序设计成在同一时刻能够做多件事情,每个线程处理各自独立的任务.线程包括了表示进程内执行环境必需的信息,包括进程中标识线程的线程ID.一组寄存器值.栈.调度 ...

  6. ubuntu的apt-get提示资源被锁定

    一.错误提示 E: Could not : Resource temporarily unavailable) E: Unable to lock the administration directo ...

  7. React dva 的使用

    各大传送门: DvaJS Github DvaJS API与示例 了解 dva- dva = React-Router + Redux + Redux-saga + fetch - dva的初衷是(其 ...

  8. nginx 内置变量大全(转)

    HTTP核心模块支持一些内置变量,变量名与apache里的对应.比如 $http_user_agent,$http_cookie等表示HTTP请求信息的变量.更多变量:$args, 请求中的参数; $ ...

  9. Java中的static关键字的用法

    1.静态方法 static:通常在一个类中定义一个方法为static,那就是说,无需本类的对象即可调用此方法 声明为static的方法有以下几条限制: (1)它们仅能调用其他的static方法. (2 ...

  10. PHP利用MySQL保存session(php5.4之前的处理)

    简介 使用MySQL保存session,需要保存三个关键性的数据:session id.session数据.session生命期. 考虑到session的使用方式,没必要使用InnoDB引擎,MyIS ...