jquery - 使用高亮filterData在全局变量上不显示过滤器数据意味着不在Typescript中的功能

标签 jquery typescript datatables angular6

我正在使用Angular DataTable一切正常,但是当我console我的variable在功能下时显示,但是当我console在功能外时它不显示console时,variable上没有任何内容variable为空白。

  @ViewChild(DataTableDirective)
  private datatableElement: DataTableDirective;
  dtOptions: DataTables.Settings = {};

  var getFilterData=""

  this.datatableElement.dtInstance.then((dtInstance: DataTables.Api) => {
      dtInstance
        .on( 'draw', function () {  
          getFilterData=dtInstance.search()
            console.log(getFilterData) //getting filter value
      } );
    })


没有获得过滤值

console.log(getFilterData) // not getting filter value


我的期望是

如何在全局变量中存储过滤器值意味着在函数外部,我在函数下获取值,但不在函数外部,并且我想要过滤器突出显示我想要的值(如果我得到的话),那么我可以轻松地使过滤器数据高亮。

最佳答案

问题是您正在使用javascript function和Typescript function,并且在javascript function下该值正在获取,但我认为您在Typescript下未得到该值,因为这与从javascript传递到Typescript的不同。

如果要突出显示过滤器数据,则只需选择2个选项即可,根据您的选择,这里有2个选项。


使用npm依赖npm install julmot/mark.js --save-devnpm install julmot/datatables.mark.js --save-dev
使用CDN https://cdn.jsdelivr.net/g/mark.js(jquery.mark.min.js)https://cdn.datatables.net/plug-ins/1.10.13/features/mark.js/datatables.mark.js


这是链接Link 1Link 2

并仅用于突出显示过滤器数据示例

this.dtOptions={
 mark=true
}


和自定义

this.dtOptions={
 mark:{
   className: 'highlight'
 }
}


关于mark js和highligh文档的更多信息是Here

关于jquery - 使用高亮filterData在全局变量上不显示过滤器数据意味着不在Typescript中的功能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60448394/

相关文章:

typescript - 如何在浏览器中使用捆绑的 Angular 2 应用程序?

php - 数据表警告 : table id={id} - Invalid JSON response

javascript - 向上滚动 50px 后显示导航菜单

javascript - jQuery 1.9.1 中发生了什么变化导致 .data 扩展方法在选择器未返回任何结果时返回 null 而不是 undefined?

javascript - 在 Angular 中动态加载组件

node.js - 无法使用 webpack 加载 spfx 解决方案的 sp-loader

java - 数据表警告 : table id=example - Ajax error

Jquery 数据表将列导出为类型 "Date"

javascript - 请求正文在 KOA 中未定义

javascript - $compile 动态添加行以使用 ngClick - AngularJS