Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/475.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/336.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 将IF语句压缩为似乎过了头_Javascript_Jquery - Fatal编程技术网

Javascript 将IF语句压缩为似乎过了头

Javascript 将IF语句压缩为似乎过了头,javascript,jquery,Javascript,Jquery,对于JQuery来说,我有以下代码,我认为这有点过分了,因为我所要做的就是将返回值与一组按钮匹配,并添加/删除一个类 星期天按钮的HTML Console.Log返回的数据 你想要遵循的技巧叫做“不要重复你自己”,或者简称为“干” 在本例中,日期始终与要定位的元素的id相同,因此可以从该日期手动构建选择器字符串一次。您还可以使用toggleClass而不是交替的addClass和removeClass调用。试试这个: splitSelectedDays.forEach(day => {

对于JQuery来说,我有以下代码,我认为这有点过分了,因为我所要做的就是将返回值与一组按钮匹配,并添加/删除一个类

星期天按钮的HTML

Console.Log返回的数据

你想要遵循的技巧叫做“不要重复你自己”,或者简称为“干”

在本例中,日期始终与要定位的元素的id相同,因此可以从该日期手动构建选择器字符串一次。您还可以使用toggleClass而不是交替的addClass和removeClass调用。试试这个:

splitSelectedDays.forEach(day => {
  let dayName = day.trim().toLowerCase();
  $('#' + dayName).toggleClass('btn-default btn-primary');
})

提示:传递给$function的参数是一个字符串。我想这差不多就是了。我知道,只要我选择一个数据行,其中有一天是可用的,它就可以完成,但仍然会突出显示所有数据行。我已经添加了一张DataTable dataSorry的图片我的坏我有一个决赛如果我没有注释掉的话如果“All Days”被返回,我错过了a=所以它总是落在里面。非常好的回答,谢谢
var selectedDays = modifyRecordData.selectedDays;
var splitSelectedDays = selectedDays.split(',');

splitSelectedDays.forEach(day => {
    let val = day.trim();

    if(val == 'Mon') {
        $('#mon').removeClass('btn-default');
        $('#mon').addClass('btn-primary');
    }

    if (val == 'Tue') {
        $('#tue').removeClass('btn-default');
        $('#tue').addClass('btn-primary');
    }

    if (val == 'Wed') {
        $('#wed').removeClass('btn-default');
        $('#wed').addClass('btn-primary');
    }

    if (val == 'Thur') {
        $('#thur').removeClass('btn-default');
        $('#thur').addClass('btn-primary');
    }

    if (val == 'Fri') {
        $('#fri').removeClass('btn-default');
        $('#fri').addClass('btn-primary');
    }

    if (val == 'Sat') {
        $('#sat').removeClass('btn-default');
        $('#sat').addClass('btn-primary');
    }

    if (val == 'Sun') {
        $('#sun').removeClass('btn-default');
        $('#sun').addClass('btn-primary');
    }
})
splitSelectedDays.forEach(day => {
  let dayName = day.trim().toLowerCase();
  $('#' + dayName).toggleClass('btn-default btn-primary');
})