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

优化我的JQuery元素显示隐藏代码(遵循DRY原则)

优化后的jQuery代码方案

你的代码核心问题是重复了两次相同的显示/隐藏逻辑,我们可以通过提取复用函数和合并元素选择器来遵循DRY原则,优化后的代码如下:

<script>
$(document).ready(function () {
    // 提取复用的显示/隐藏逻辑为函数
    function toggleFields() {
        var val = $('#id_ocftype').val();
        // 合并选择器,一次性操作所有目标元素
        $('#div_id_date, #div_id_amount, #div_id_signedby').toggle(val > 3);
    }

    // 页面加载时执行一次初始化
    toggleFields();

    // 绑定change事件,调用复用函数
    $('#id_ocftype').change(toggleFields);
});
</script>

优化点说明:

  • 提取复用函数:把重复的判断和操作逻辑封装成toggleFields函数,页面初始化和change事件都调用它,彻底消除代码冗余。
  • 合并元素选择器:用逗号分隔多个选择器,一次性选中所有需要操作的元素,减少DOM查询次数,提升执行效率。
  • 使用toggle方法:jQuery的toggle()方法可以根据传入的布尔值自动切换元素的显示/隐藏状态,替代了原代码中冗余的if-else分支,让逻辑更简洁直观。

内容的提问来源于stack exchange,提问作者Dr. Ijaz Chaudhry

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.06 11:10:41