You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在jQuery中将两个功能重复的清除类函数封装为通用函数?

编写通用的jQuery清除缓存函数

首先,我们可以把这两个函数里可变的部分提取为参数,比如按钮选择器、表格选择器、文本容器选择器,以此封装一个通用函数,彻底消除重复代码。

通用函数实现

function setupClearButton(buttonSelector, gridSelector, textSpanSelector) {
  $(buttonSelector).offOn('click', function(event) {
    // 清除表格过滤缓存
    $(gridSelector).igGridFiltering('filter', [], true);
    // 清空文本内容
    $(textSpanSelector).text('');
    // 隐藏当前点击的按钮(用this代替重复选择器更简洁)
    $(this).hide();
    return false;
  });
}

调用方式

原来的两个独立函数,现在可以用两行调用代码完全替代,功能和之前完全一致:

// 对应原CleartblCMRAssoc_click的功能
setupClearButton('#btnCleartblCMRAssoc', '#tblCMRAssociation', '#spanCMRAssocDetailId');

// 对应原ClearfldsetTTT_click的功能
setupClearButton('#btnClearfldsetTTT', '#tblTTT', '#spanfldsetTTTDetailId');

这样做的好处

  • 减少冗余代码:重复的逻辑只写一次,后续修改清除规则时,只需要维护这一个函数即可,不用改多处。
  • 提升可读性:每个调用都清晰传递了对应元素的选择器,一眼就能看出按钮和表格、文本容器的对应关系。
  • 扩展性更强:以后新增类似的清除按钮,只需要一行调用代码,不用再复制粘贴整个函数结构。

内容的提问来源于stack exchange,提问作者John S.

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.11 08:08:59