Datatables 带有YADCF-'的数据表;复制URL';应用过滤器的按钮

Datatables 带有YADCF-'的数据表;复制URL';应用过滤器的按钮,datatables,url-rewriting,copy,yadcf,Datatables,Url Rewriting,Copy,Yadcf,我将Datatables脚本与YADCF过滤器一起使用。我需要创建一个新的“复制URL”按钮,用应用的过滤器复制页面URL。我添加了一个脚本,它使用“URLSearchParams”并允许获取过滤后的列数据。例如,如果我在浏览器地址栏中手动键入example.com/table?category=DAAURL,它会过滤“category”列中的数据并显示相关结果。 但是,我不确定如何改进此脚本,并且: 当您更改过滤器或在服务器上保存更新的URL时,在地址栏中动态更新URL(哪种方法更容易) 从服

我将Datatables脚本与YADCF过滤器一起使用。我需要创建一个新的“复制URL”按钮,用应用的过滤器复制页面URL。我添加了一个脚本,它使用“URLSearchParams”并允许获取过滤后的列数据。例如,如果我在浏览器地址栏中手动键入example.com/table?category=DAAURL,它会过滤“category”列中的数据并显示相关结果。 但是,我不确定如何改进此脚本,并且:

  • 当您更改过滤器或在服务器上保存更新的URL时,在地址栏中动态更新URL(哪种方法更容易)
  • 从服务器获取带有应用过滤器的URL
  • 按“复制URL”按钮将此URL复制到剪贴板。 复制的URL应具有类似的格式:example.com/table?category=DAA&function=Data%20Con&bits=12(其中example.com/table是指向站点页面的链接)
  • 我在这里上传了整个代码: 以下部分允许使用过滤器中的参数:

    const urlParams = new URLSearchParams(window.location.search);
    
    const whichCategory = urlParams.get('category');
        if ( whichCategory !== null ) {
      yadcf.exFilterColumn( productTableVar, [[0, whichCategory]]);
    }
    const whichFunction = urlParams.get('function');
    if ( whichFunction !== null ) {
      yadcf.exFilterColumn( productTableVar, [[1, whichFunction]]);
    
    }
    
    const whichBit = urlParams.get('bits');
        if ( whichBit !== null ) {
      yadcf.exFilterColumn( productTableVar, [[3, whichBit]]);
    }
    
    一个重要的注意事项:这些列包含HTML格式的内容,其中包含特殊字符(&或/)和空格

    我将感谢你的帮助。多谢各位