gpt4 book ai didi

javascript - jQuery if 多个 .val 下拉值的条件

转载 作者:行者123 更新时间:2023-11-30 13:45:38 28 4
gpt4 key购买 nike

我根据下拉选择将数据附加到输入字段,最干净的方法是什么,因为我有大约 25 个要做,目前我的工作方式如下:

$('#dropdown').change(function() {
if($(this).val() == 10){
('#number').val('108-0<?php echo $number; ?>');
}
});

几个下拉选项共享相同的附加编号,所以我不想重复代码,我知道我可以这样做:

$('#dropdown').change(function() {
if($(this).val() == 10||
$(this).val() == 11||
$(this).val() == 12){
$('#number').val('108-0<?php echo $number; ?>');
}

但即使这看起来太过分了,你会怎么做?

最佳答案

检查可能值的数组是否包含 .val():

$('#dropdown').change(function() {
if ([10, 11, 12].includes(Number($(this).val()))) {
$('#number').val('108-0<?php echo $number; ?>');
}
});

对于这种微不足道的事情,不需要像 jQuery 这样的大型库:

const [dropdown, number] = ['dropdown', 'number'].map(id => document.getElementById(id));
dropdown.addEventListener('change', () => {
if ([10, 11, 12].includes(Number(dropdown.value))) {
number.value = '108-0<?php echo $number; ?>';
}
});

如果您需要检查多个值数组,请先将其提取到一个变量中:

$('#dropdown').change(function() {
const val = Number($(this).val());
if ([10, 11, 12].includes(val)) {
$('#number').val('108-0<?php echo $number; ?>');
} else if ([1, 5, 15].includes(val)) {
$('#number').val(5000);
}
});

关于javascript - jQuery if 多个 .val 下拉值的条件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59384366/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com