javascript - 使用数据表在选择框薪资范围之间进行过滤

标签 javascript jquery datatable

我正在尝试使用选择框过滤数据表中的工资,但我不确定我做错了什么。

这是选择框:

<select class="custom-select w-100" name="salary" id="salary">
<option value="" selected="selected">Any salary</option>
<option value="18000">£18,000 and below</option>
<option value="28000">£28,000 and below </option>
<option value="32000">£32,000 and below</option>
<option value="40000">£40,000 and above</option>
</select>

这是查询:

$.fn.dataTable.ext.search.push(function (settings, data, dataIndex) {
      var salary = parseFloat( data[2].replace(",","") ) || 0;
      return salary <= parseInt($('#salary').val())
      });

$('#salary').on( 'change', function (data) {
        table.draw();
      });

这是表格的图片:enter image description here

有谁知道我做错了什么?我想这是显而易见的事情..

最佳答案

试试这个:您还需要将井号与逗号一起替换

$.fn.dataTable.ext.search.push(function (settings, data, dataIndex) {
      var salary = data[2].replace(",","");
          salary = salary.replace("£","");
          salary = parseFloat(salary) || 0;
      var selectedText = $('#salary option:selected').text();
      if(selectedText.indexOf('excellent')!=-1) {
        return false;
      } else if(selectedText.indexOf('above')!=-1) {
        return salary > parseInt($('#salary').val());
      } else {
        return salary <= parseInt($('#salary').val());
      }
 });

关于javascript - 使用数据表在选择框薪资范围之间进行过滤,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44632828/

相关文章:

jquery - 如何在 Express View 之间进行页面转换?

c# - 数据表日期时间列没有毫秒

数据表和 PDFmake

javascript - 同位素项目在初始加载时重叠

javascript - Ember 数据首先从 Store 获取记录,而不是带参数的 API

javascript - 如何查看所有窗口中所有选项卡的URL? (谷歌浏览器扩展)

c# - 一个Datagridview可以绑定(bind)多个数据源(数据表)吗?

javascript - MediaElement.js - Flash 视频在完全加载之前不会播放

c# - 如何在不调用 Controller 的情况下刷新 MVC webgrid

javascript - 多个 .on() 函数不起作用