Skip to content

Instantly share code, notes, and snippets.

@yangbajing
Created August 21, 2012 03:59
Show Gist options
  • Save yangbajing/3411389 to your computer and use it in GitHub Desktop.
Save yangbajing/3411389 to your computer and use it in GitHub Desktop.
function areaSelect(areaContainer, selectedTxt, selectedVal) {
$('.area-sub label').click(function(e) {
var chkbox = $(this).find('input');
var val = chkbox.val().trim();
var txt = chkbox.parent().text().trim();
var txtObj = $('#' + selectedTxt);
var valObj = $('#' + selectedVal);
if (chkbox.is(':checked')) {
if (val.split('-')[0] != valObj.val().trim().split('-')[0]) {
txtObj.val('');
valObj.val('');
chkbox.parent().parent().parent().siblings().find('input.area-select').attr('checked',false);
}
util.appendInputTxt(txtObj,txt).appendInputTxt(valObj,val);
} else {
util.removeInputTxt(txtObj,txt).removeInputTxt(valObj,val);
}
util.stopBubble(e);
});
$('.select-all').click(function(e) {
$('#' + areaContainer).find('input.area-select').attr('checked',false);
var chkboxs = $(this).parent().siblings('.area-sub').find('.area-select');
$('#' + selectedTxt).val('');
$('#' + selectedVal).val('');
chkboxs.each(function(i) {
var chkbox = $(this);
chkbox.attr('checked',true);
var val = chkbox.val().trim();
var txt = chkbox.parent().text().trim();
util.appendInputTxt($('#' + selectedTxt), txt).appendInputTxt($('#' + selectedVal), val);
});
util.stopBubble(e);
});
}
@chiroc
Copy link

chiroc commented Aug 21, 2012

function areaSelect(areaContainer, selectedTxt, selectedVal) {
var txtObj = $('#' + selectedTxt);
var valObj = $('#' + selectedVal);

$('.area-sub label').click(function(e) {
var chkbox = $(this).find('input');
var val = chkbox.val().trim();
var txt = chkbox.parent().text().trim();

if (chkbox.is(':checked')) {
    if (val.split('-')[0] != valObj.val().trim().split('-')[0]) {
    txtObj.val('');
    valObj.val('');
    chkbox.parent().parent().parent().siblings().find('input.area-select').attr('checked',false);
    }

    util.appendInputTxt(txtObj,txt).appendInputTxt(valObj,val);
} else {
    util.removeInputTxt(txtObj,txt).removeInputTxt(valObj,val);
}

util.stopBubble(e);
});

$('.select-all').click(function(e) {
$('#' + areaContainer).find('input.area-select').attr('checked',false);     
var chkboxs = $(this).parent().siblings('.area-sub').find('.area-select');
txtObj.val('');
valObj.val('');

chkboxs.each(function(i) {
    var chkbox = $(this);
    chkbox.attr('checked',true);
    var val = chkbox.val().trim();
    var txt = chkbox.parent().text().trim();
    util.appendInputTxt(txtObj, txt).appendInputTxt(valObj, val);
});

util.stopBubble(e);
});

}

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment