我有一个选择框,有几个选项, 我想根据所选的选项值显示和隐藏div。 div根据selecton隐藏和显示,效果很好。
我的问题是如何调用该函数以便在页面加载时如果val
trriger未激活,交换机将根据change
值更改其状态。
我知道tas函数中的triger是change
,但我是否会绕过它?
document.onload = tas($('#taasukati_av_state').val());
function tas(val) {
console.log(val);
$('.taas').change(function () {
//console.log();
if ($(this).val()) {
val = $(this).val();
console.log(val);
};
switch (val) {
case '0':
$(this).closest('.taasuka').find('div.starthidden').addClass('hidden');
break;
case '1':
$(this).closest('.taasuka').find('div.starthidden').addClass('hidden');
$(this).closest('.taasuka').find('div.salary').removeClass('hidden');
break;
case '2':
$(this).closest('.taasuka').find('div.starthidden').addClass('hidden');
$(this).closest('.taasuka').find('div.employ').removeClass('hidden');
break;
case '3':
$(this).closest('.taasuka').find('div.starthidden').addClass('hidden');
$(this).closest('.taasuka').find('div.lo-oved').removeClass('hidden');
break;
}
});
}
答案 0 :(得分:0)
我添加了trigerr
个事件以激活change
事件;
我在函数结束前添加了这一行:
$('.taas').trigger( "change" );
这是更新后的代码:
function tas(val) {
console.log(val);
$('.taas').change(function () {
if ($(this).val()) {
val = $(this).val();
console.log(val);
};
switch (val) {
case '0':
$(this).closest('.taasuka').find('div.starthidden').addClass('hidden');
break;
case '1':
$(this).closest('.taasuka').find('div.starthidden').addClass('hidden');
$(this).closest('.taasuka').find('div.salary').removeClass('hidden');
break;
case '2':
$(this).closest('.taasuka').find('div.starthidden').addClass('hidden');
$(this).closest('.taasuka').find('div.employ').removeClass('hidden');
break;
case '3':
$(this).closest('.taasuka').find('div.starthidden').addClass('hidden');
$(this).closest('.taasuka').find('div.lo-oved').removeClass('hidden');
break;
}
});
$('.taas').trigger( "change" );
}