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. CentOS中配置php环境

    1.安装apache: yum install httpd httpd-devel   2.安装mysql: yum install mysql mysql-server   3.安装php: yum ...

  2. js控制select选中显示不同表单内容

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  3. 灵光一现的trick

    感觉平时会丢掉好多挺好的trick…… 图论 1.图G,固定S,T.可以将任意一条边加上权值$k(k>0)$,求最大化加权后最短路. 2.图G,固定S,T.可以将任意一条边乘以权值$k(k> ...

  4. Cannot resolve reference to bean 'sessionFactory' while setting bean property 'sessionFactory'; 没有sessionFactory

    maven子项目spring配置文件创建bean 没有找到另一个子项目中的bean. 需要引入另一个子项目的配置文件,仅提供测试用 如下: <!-- 仅供测试用 --> <impor ...

  5. 用MySQL的optimizer_trace进行sql调优

    在我们调优MySQL的SQL时候,通常使用三种工具进行查看sql执行的效率,explain.profile.optimizer_trace.前两个经常被人使用,由于第三个难度较大,大家使用的较少,下面 ...

  6. IE hack 和手机尺寸

        来自为知笔记(Wiz)

  7. 申请qq第三方登录 http://www.php20.com/forum.php?mod=viewthread&tid=29 (出处: 码农之家)

    百度  qq互联  进入网站 按图中的步骤申请第三方登录即可 先申请成为开发者 审核通过后再继续操作 提交 后列表中会出现提交的申请. 状态为审核中,审核通过会得到下图. 点查看 红线后面就是appi ...

  8. C语言数组篇(五)多级指针和二维数组指针的区别

    多级指针   以二级指针为例 二级指针的由来是 指针数组 的指针形式. int *p[10] 读取的顺序是 p[] --> 10个空间的数组 * p[] --> 这10个空间的数组里面存放 ...

  9. VIM配置IDE

    转载于:https://blog.csdn.net/andre617/article/details/53496490#%E8%84%9A%E6%B3%A8 由于YCM需要vim支持python,需要 ...

  10. python创建字典

    创建: {x:x**2 for x in (2,4,6)} dict(xjm=110,lxh=119,pzq=120) dict([('a',1),('b',2),('c',3)])