学习基于jQuery的FlexiGrid工具 (十一)

2014-11-24 01:40:17 · 作者: · 浏览: 5
" "+

"

");

//Split into separate selectors because of bug in jQuery 1.3.2

$('input[name=q]', g.sDiv).keydown(function (e) {

if (e.keyCode == 13) {

g.doSearch();

}

});

$('select[name=qtype]', g.sDiv).keydown(function (e) {

if (e.keyCode == 13) {

g.doSearch();

}

});

$('input[value=Clear]', g.sDiv).click(function () {

$('input[name=q]', g.sDiv).val('');

p.query = '';

g.doSearch();

});

$(g.bDiv).after(g.sDiv);

}

}

$(g.pDiv, g.sDiv).append("

");

// add title

if (p.title) {

g.mDiv.className = 'mDiv';

g.mDiv.innerHTML = '

' + p.title + '
';

$(g.gDiv).prepend(g.mDiv);

if (p.showTableToggleBtn) {

$(g.mDiv).append('

');

$('div.ptogtitle', g.mDiv).click(function () {

$(g.gDiv).toggleClass('hideBody');

$(this).toggleClass('vsble');

});

}

}

//setup cdrops

g.cdropleft = document.createElement('span');

g.cdropleft.className = 'cdropleft';

g.cdropright = document.createElement('span');

g.cdropright.className = 'cdropright';

//add block

g.block.className = 'gBlock';

var gh = $(g.bDiv).height();

var gtop = g.bDiv.offsetTop;

$(g.block).css({

width: g.bDiv.style.width,

height: gh,

background: 'white',

position: 'relative',

marginBottom: (gh * -1),

zIndex: 1,

top: gtop,

left: '0px'

});

$(g.block).fadeTo(0, p.blockOpacity);

// add column control

if ($('th', g.hDiv).length) {

g.nDiv.className = 'nDiv';

g.nDiv.innerHTML = "

";

$(g.nDiv).css({

marginBottom: (gh * -1),

display: 'none',

top: gtop

}).noSelect();

var cn = 0;

$('th div', g.hDiv).each(function () {

var kcol = $("th[axis='col" + cn + "']", g.hDiv)[0];

var chk = 'checked="checked"';

if (kcol.style.display == 'none') {

chk = '';

}

$('tbody', g.nDiv).append('' + this.innerHTML + '');

cn++;

});

if ($.browser.msie && $.browser.version < 7.0) $('tr', g.nDiv).hover(function () {

$(this).addClass('ndcolover');

}, function () {

$(this).removeClass('ndcolover');

});

$('td.ndcol2', g.nDiv).click(function () {

if ($('input:checked', g.nDiv).length <= p.minColToggle && $(this).prev().find('input')[0].checked) return false;

return g.toggleCol($(this).prev().find('input').val());

});

$('input.togCol', g.nDiv).click(function () {

if ($('input:checked', g.nDiv).length < p.minColToggle && this.checked == false) return false;

$(this).parent().next().trigger('click');

});

$(g.gDiv).prepend(g.nDiv);

$(g.nBtn).addClass('nBtn')

.html('

')

.attr('title', 'Hide/Show Columns')

.click(function () {

$(g.nDiv).toggle();

return true;

}

);

if (p.showToggleBtn) {

$(g.gDiv).prepend(g.nBtn);

}

}

// add date edit layer

$(g.iDiv).addClass('iDiv').css({

display: 'none'

});

$(g.bDiv).append(g.iDiv);

// add flexigrid events

$(g.bDiv).hover(function () {

$(g.nDiv).hide();

$(g.nBtn).hide();

}, function () {

if (g.multisel) {

g.multisel = false;

}

});

$(g.gDiv).hover(function () {}, function () {

$(g.nDiv).hide();

$(g.nBtn).hide();

});

//add document events

$(document).mousemove(function (e) {

g.dragMove(e)

}).mouseup(function (e) {

g.dragEnd()

}).hover(function () {}, function () {

g.dragEnd()

});

//browser adjustments

if ($.browser.msie && $.browser.version < 7.0) {

$('.hDiv,.bDiv,.mDiv,.pDiv,.vGrip,.tDiv, .sDiv', g.gDiv).css({