49 lines
1.2 KiB
JavaScript
49 lines
1.2 KiB
JavaScript
|
function get_uniq(arr){
|
||
|
return arr.filter(function (value, index, self) {
|
||
|
return self.indexOf(value) === index;
|
||
|
})
|
||
|
}
|
||
|
$(document).on('ready',function() {
|
||
|
var $target
|
||
|
$target = $('.select_trigger')
|
||
|
var change_eles = []
|
||
|
$.each($target,function(){
|
||
|
var e = $(this).attr('data-trigger'),
|
||
|
p = $(this).attr('data-parent'),
|
||
|
ele = $(this).parents(p).eq(0).find(e),
|
||
|
trigger_keys = $(this).attr('for').split('|'),
|
||
|
$this = $(this);
|
||
|
if (!change_eles.includes(ele[0])){
|
||
|
change_eles.push(ele[0])
|
||
|
ele.off('change')
|
||
|
}
|
||
|
ele.change(function(){
|
||
|
var value = null;
|
||
|
if ($(this).prop("tagName").toUpperCase()=='INPUT'){
|
||
|
value = $(this).filter(":checked").val()
|
||
|
}else{
|
||
|
value = $(this).val()
|
||
|
}
|
||
|
if (trigger_keys.includes(value)){
|
||
|
$this.removeClass('hide')
|
||
|
}else{
|
||
|
$this.addClass('hide')
|
||
|
}
|
||
|
}).trigger('change')
|
||
|
})
|
||
|
$target = $('input[data-div]');
|
||
|
$target.off('change')
|
||
|
$target.change(function(){
|
||
|
var $child = $(this).parents('div.attributes-body').eq(0).find('.'+$(this).data('div'))
|
||
|
if ($(this).prop('checked')){
|
||
|
$child.removeClass('hide')
|
||
|
}else{
|
||
|
$child.addClass('hide')
|
||
|
}
|
||
|
})
|
||
|
$target.trigger('change')
|
||
|
$target.parents('label.float-right').css('float','right')
|
||
|
})
|
||
|
$(function(){
|
||
|
$(document).trigger('ready')
|
||
|
})
|