easyui datagrid 1.4 当total为0时,请求两次url问题

框架问题:需要在easyui文件后加修补补丁

/**
* The Patch for jQuery EasyUI 1.4
*/
(function($){
var plugin = $.fn._size;
$.fn._size = function(options, parent){
if (typeof options != 'string'){
return this.each(function(){
parent = parent || $(this).parent();
if (parent.length){
plugin.call($(this), options, parent);
}
});
} else if (options == 'unfit'){
return this.each(function(){
var p = $(this).parent();
if (p.length){
plugin.call($(this), options, parent);
}
});
} else {
return plugin.call(this, options, parent);
}
};
})(jQuery);
(function($){
$.map(['validatebox','textbox','filebox','searchbox',
'combo','combobox','combogrid','combotree',
'datebox','datetimebox','numberbox',
'spinner','numberspinner','timespinner','datetimespinner'], function(plugin){
if ($.fn[plugin]){
if ($.fn[plugin].defaults.events){
$.fn[plugin].defaults.events.click = function(e){
if (!$(e.data.target).is(':focus')){
$(e.data.target).trigger('focus');
}
};
}
}
});
$.fn.combogrid.defaults.height = 22;
$(function(){
$(document).bind('mousewheel.combo', function(e){
$(e.target).trigger('mousedown.combo');
});
});
})(jQuery);
(function($){
$.extend($.fn.form.methods, {
clear: function(jq){
return jq.each(function(){
var target = this;
$('input,select,textarea', target).each(function(){
var t = this.type, tag = this.tagName.toLowerCase();
if (t == 'text' || t == 'hidden' || t == 'password' || tag == 'textarea'){
this.value = '';
} else if (t == 'file'){
var file = $(this);
if (!file.hasClass('textbox-value')){
var newfile = file.clone().val('');
newfile.insertAfter(file);
if (file.data('validatebox')){
file.validatebox('destroy');
newfile.validatebox();
} else {
file.remove();
}
}
} else if (t == 'checkbox' || t == 'radio'){
this.checked = false;
} else if (tag == 'select'){
this.selectedIndex = -1;
}
});
var t = $(target);
var plugins = ['textbox','combo','combobox','combotree','combogrid','slider'];
for(var i=0; i<plugins.length; i++){
var plugin = plugins[i];
var r = t.find('.'+plugin+'-f');
if (r.length && r[plugin]){
r[plugin]('clear');
}
}
$(target).form('validate');
});
}
});
})(jQuery);
(function($){
function setSize(target, param){
var opts = $.data(target, 'linkbutton').options;
if (param){
$.extend(opts, param);
}
if (opts.width || opts.height || opts.fit){
var btn = $(target);
var parent = btn.parent();
var isVisible = btn.is(':visible');
if (!isVisible){
var spacer = $('<div style="display:none"></div>').insertBefore(target);
var style = {
position: btn.css('position'),
display: btn.css('display'),
left: btn.css('left')
};
btn.appendTo('body');
btn.css({
position:'absolute',
display:'inline-block',
left:-20000
});
}
btn._size(opts, parent);
var left = btn.find('.l-btn-left');
left.css('margin-top', 0);
left.css('margin-top', parseInt((btn.height()-left.height())/2)+'px');
if (!isVisible){
btn.insertAfter(spacer);
btn.css(style);
spacer.remove();
}
}
}
var plugin = $.fn.linkbutton;
$.fn.linkbutton = function(options, param){
if (typeof options != 'string'){
return this.each(function(){
plugin.call($(this), options, param);
setSize(this);
});
} else {
return plugin.call(this, options, param);
}
};
$.fn.linkbutton.methods = plugin.methods;
$.fn.linkbutton.defaults = plugin.defaults;
$.fn.linkbutton.parseOptions = plugin.parseOptions;
$.extend($.fn.linkbutton.methods, {
resize: function(jq, param){
return jq.each(function(){
setSize(this, param);
});
}
});
})(jQuery);
(function($){
var plugin = $.fn.dialog;
$.fn.dialog = function(options, param){
var result = plugin.call(this, options, param);
if (typeof options != 'string'){
this.each(function(){
var opts = $(this).panel('options');
if (isNaN(parseInt(opts.height))){
$(this).css('height', '');
}
var onResize = opts.onResize;
opts.onResize = function(w, h){
onResize.call(this, w, h);
if (isNaN(parseInt(opts.height))){
$(this).css('height', '');
}
var shadow = $.data(this, 'window').shadow;
if (shadow){
var cc = $(this).panel('panel');
shadow.css({
width: cc._outerWidth(),
height: cc._outerHeight()
});
}
};
if (opts.closed){
var pp = $(this).panel('panel');
pp.show();
$(this).panel('resize');
pp.hide();
}
});
}
return result;
};
$.fn.dialog.methods = plugin.methods;
$.fn.dialog.parseOptions = plugin.parseOptions;
$.fn.dialog.defaults = plugin.defaults;
})(jQuery);
(function($){
function createTab(container, pp, options) {
var state = $.data(container, 'tabs');
options = options || {};
// create panel
pp.panel({
border: false,
noheader: true,
closed: true,
doSize: false,
iconCls: (options.icon ? options.icon : undefined)
});
var opts = pp.panel('options');
$.extend(opts, options, {
onLoad: function(){
if (options.onLoad){
options.onLoad.call(this, arguments);
}
state.options.onLoad.call(container, $(this));
}
});
var tabs = $(container).children('div.tabs-header').find('ul.tabs');
opts.tab = $('<li></li>').appendTo(tabs); // set the tab object in panel options
opts.tab.append(
'<a href="javascript:void(0)" class="tabs-inner">' +
'<span class="tabs-title"></span>' +
'<span class="tabs-icon"></span>' +
'</a>'
);
$(container).tabs('update', {
tab: pp,
options: opts
});
}
function addTab(container, options) {
var opts = $.data(container, 'tabs').options;
var tabs = $.data(container, 'tabs').tabs;
if (options.selected == undefined) options.selected = true;
var pp = $('<div></div>').appendTo($(container).children('div.tabs-panels'));
tabs.push(pp);
createTab(container, pp, options);
opts.onAdd.call(container, options.title, tabs.length-1);
$(container).tabs('resize');
if (options.selected){
$(container).tabs('select', tabs.length-1);
}
}
$.extend($.fn.tabs.methods, {
add: function(jq, options){
return jq.each(function(){
addTab(this, options);
});
}
});
})(jQuery);
(function($){
$.extend($.fn.menubutton.methods, {
enable: function(jq){
return jq.each(function(){
$(this).data('menubutton').options.disabled = false;
$(this).linkbutton('enable');
});
}
});
})(jQuery);
(function($){
var onAfterRender = $.fn.datagrid.defaults.view.onAfterRender;
$.extend($.fn.datagrid.defaults.view, {
updateRow: function(target, rowIndex, row){
var opts = $.data(target, 'datagrid').options;
var rows = $(target).datagrid('getRows');
var oldStyle = _getRowStyle(rowIndex);
$.extend(rows[rowIndex], row);
var newStyle = _getRowStyle(rowIndex);
var oldClassValue = oldStyle.c;
var styleValue = newStyle.s;
var classValue = 'datagrid-row ' + (rowIndex % 2 && opts.striped ? 'datagrid-row-alt ' : ' ') + newStyle.c;
function _getRowStyle(rowIndex){
var css = opts.rowStyler ? opts.rowStyler.call(target, rowIndex, rows[rowIndex]) : '';
var classValue = '';
var styleValue = '';
if (typeof css == 'string'){
styleValue = css;
} else if (css){
classValue = css['class'] || '';
styleValue = css['style'] || '';
}
return {c:classValue, s:styleValue};
}
function _update(frozen){
var fields = $(target).datagrid('getColumnFields', frozen);
var tr = opts.finder.getTr(target, rowIndex, 'body', (frozen?1:2));
var checked = tr.find('div.datagrid-cell-check input[type=checkbox]').is(':checked');
tr.html(this.renderRow.call(this, target, fields, frozen, rowIndex, rows[rowIndex]));
tr.attr('style', styleValue).removeClass(oldClassValue).addClass(classValue);
if (checked){
tr.find('div.datagrid-cell-check input[type=checkbox]')._propAttr('checked', true);
}
}
_update.call(this, true);
_update.call(this, false);
$(target).datagrid('fixRowHeight', rowIndex);
},
onAfterRender: function(target){
onAfterRender.call($.fn.datagrid.defaults.view, target);
setTimeout(function(){
var opts = $(target).datagrid('options');
opts.pageNumber = opts.pageNumber || 1;
},0);
}
});
$.fn.datagrid.defaults.loader = function(param, success, error){
var opts = $(this).datagrid('options');
if (!opts.url) return false;
if (opts.pagination && opts.pageNumber == 0){
opts.pageNumber = 1;
param.page = 1;
}
if (param.page == 0){
return false;
}
$.ajax({
type: opts.method,
url: opts.url,
data: param,
dataType: 'json',
success: function(data){
success(data);
},
error: function(){
error.apply(this, arguments);
}
});
};
})(jQuery);
(function($){
$.fn.numberbox.defaults.filter = function(e){
var opts = $(this).numberbox('options');
var s = $(this).numberbox('getText');
if (e.which == 45){ //-
return (s.indexOf('-') == -1 ? true : false);
}
var c = String.fromCharCode(e.which);
if (c == opts.decimalSeparator){
return (s.indexOf(c) == -1 ? true : false);
} else if (c == opts.groupSeparator){
return true;
} else if ((e.which >= 48 && e.which <= 57 && e.ctrlKey == false && e.shiftKey == false) || e.which == 0 || e.which == 8) {
return true;
} else if (e.ctrlKey == true && (e.which == 99 || e.which == 118)) {
return true;
} else {
return false;
}
};
})(jQuery);

EasyUi DataGrid 请求Url两次问题的更多相关文章

  1. easyui datagrid 加载两次请求,触发两次ajax 请求 问题

    datagrid初始化的时候请求两次URL 两种情况 1. <table id="gridview" class="easyui-datagrid"> ...

  2. 使用Jquery easyui datagrid请求servlet没有反应的解决办法

    在Jsp页面中把servlet请求地址写全,我已经将要注意的地方红色加粗了.我的jsp页面是新建的一个文件夹. <%@ page language="java" conten ...

  3. EasyUI datagrid 改变url属性 实现动态加载数据

    $(function () { //说明:btnsearch按钮,selCat下拉列表,ttdatagrid table $("#btnsearch").click(functio ...

  4. [转载]再次谈谈easyui datagrid 的数据加载

    这篇文章只谈jQuery easyui datagrid 的数据加载,因为这也是大家谈论最多的内容.其实easyui datagrid加载数据只有两种方式:一种是ajax加载目标url返回的json数 ...

  5. 谈谈easyui datagrid 的数据加载(转)

    这篇文章只谈jQuery easyui datagrid 的数据加载,因为这也是大家谈论最多的内容.其实easyui datagrid加载数据只有两种方式:一种是ajax加载目标url返回的json数 ...

  6. 再次谈谈easyui datagrid 的数据加载

    from:http://www.easyui.info/archives/204.html 这篇文章只谈jQuery easyui datagrid 的数据加载,因为这也是大家谈论最多的内容.其实ea ...

  7. 谈谈easyui datagrid 的数据加载

    文章目录 1url方式加载数据 1.1调用方式 1.2相关方法 1.3二次加载问题 2加载本地数据方式 2.1调用方式 2.2如何分页 2.3加载中效果 2.4如何不统计总数 这篇文章只谈jQuery ...

  8. VS2012 easyui datagrid url访问之坑

    VS2012 easyui datagrid url访问之坑 url属性放的是地址的话 返回的json格式必须有 total 和 rows,如下: {"total":2," ...

  9. 动态设置easyui datagrid URL

    动态设置easyui datagrid URL$('#tt').datagrid({url:'website/jsp/servlet',        queryParams:{method:'xx' ...

随机推荐

  1. 20145238-荆玉茗 《Java程序设计》第五次实验报告

    实验五 Java网络编程及安全 一.实验内容 1.运行下载的TCP代码,结对进行,一人服务器,一人客户端: 2.利用加解密代码包,编译运行代码,一人加密,一人解密: 3.集成代码,一人加密后通过TCP ...

  2. 剑指offer40

    class Solution { public: void FindNumsAppearOnce(vector<int> data,int* num1,int *num2) { ) ret ...

  3. p2597 灾难

    我的思路 代码: #include<cstdio> #include<iostream> #include<algorithm> #include<vecto ...

  4. gdb几个操作

    如果进程转为守护进程,可设置如下跟进子进程 set follow-fork-mode child 输出变量/函数/返回值有print, call, display,自行选择 对于打印value has ...

  5. mac上配置java jdk环境

    访问Oracle官网 http://www.oracle.com,浏览到首页的底部菜单 ,然后按下图提示操作: 2.点击“JDK DOWNLOAD”按钮: 3.选择“Accept Lisence Ag ...

  6. Shell学习——数组

    1.普通数组:只能用整数作为索引1.1.赋值[root@client02 ~]# array[0]=test1[root@client02 ~]# array[1]=test2[root@client ...

  7. 【转载】VS2015 + EF6连接MYSQL5.6

    引用文章:https://jingyan.baidu.com/article/ce09321b9cc43f2bff858fbf.html 安装包注意点说明: 1.程序名称:mysql-for-visu ...

  8. php图片上传旋转压缩方法

    用到php的exif扩展,需要开启exif 在php.ini文件中去掉exif组件的注释 extension=php_mbstring.dll //要放在php_exif.dll前面让它先加载 ext ...

  9. Ajax全解析

    什么是Ajax Ajax基本概念 Ajax(Asynchronous JavaScript and XML):翻译成中文就是异步的JavaScript和XML. 从功能上来看是一种在无需重新加载整个网 ...

  10. manjaro无法使用ifconfig查ip

    manjaro中自带的查看网络的命令是: ip addr 可以了解一下ip命令都有哪些功能 如果还是想要 ifconfig 需要安装net-tools 安装命令: sudo pacman -S net ...