自定义方法:

  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. python学习笔记——multiprocessing 多进程组件 Pipe管道

    进程间通信(IPC InterProcess Communication)是值在不同进程间传播或交换信息. IPC通过有管道(无名管道 和 有名 / 命名管道).消息队列.共享存储 / 内容.信号量. ...

  2. PLSQL_统计信息系列04_统计信息的锁定和删除

    20150506 Created By BaoXinjian

  3. System V IPC

    1.概述 System V IPC共有三种类型:System V消息队列.System V 信号量.System V 共享内存区. System V IPC操作函数如下: 2.key_t键和ftok函 ...

  4. JAVA-day08 下午-总结、測试

    继承总结: class { public static void main(String[] args) { System.out.println("Hello World!"); ...

  5. js实现页面时间动态变化

    利用函数嵌套和setTimeout函数实现时间动态变化 var myDate = new Date(); myDate.getYear(); //获取当前年份(2位) myDate.getFullYe ...

  6. [svc][op]关闭linux centos各种声音

    现在基本都用xshell了,直接xshell禁止即可 shell报警 #vi /etc/inputrc ================================ set bell-style ...

  7. 【Android】3.16 离线地图功能

    分类:C#.Android.VS2015.百度地图应用: 创建日期:2016-02-04 一.简介 百度地图目前已经支持矢量离线地图数据的下载.更新. 使用离线地图,可满足在无网络环境下查看地图信息的 ...

  8. Oracle 12C 在 Oracle Linux 6.5 64Bit 安装手冊

    Oracle 12C  在 Oracle Linux 6.5 64Bit 安装手冊.step by step 下载地址: http://download.csdn.net/detail/rlhua/7 ...

  9. ny488 素数环

    素数环 时间限制:1000 ms  |  内存限制:65535 KB 难度:2 描述 有一个整数n,把从1到n的数字无重复的排列成环,且使每相邻两个数(包括首尾)的和都为素数,称为素数环. 为了简便起 ...

  10. AngularJS通过$sce输出html的方法

    不知道大家有没有发现在用AngularJS作为前端搭建个人博客的时候,发现用AngularJs输出html的时候,浏览器并不解析这些html标签,这里我们需要其显示angular输出的html能被浏览 ...