【问题标题】:How to merge repeating query to one function in javascript/jquery如何将重复查询合并到 javascript/jquery 中的一个函数
【发布时间】:2013-05-29 13:29:20
【问题描述】:

我使用 jQuery 在我的脚本中有这些重复查询:

    if($(".splitname:contains('Kompakt')").length > 0) {
        var komText = $(".splitname:contains('Kompakt')");
        $.each(komText, function() {
            $(this).html($(this).text().replace(/Kompakt/g,"Kompakt<br />"));
        })
    }

    if($(".splitname:contains('System')").length > 0) {
        var sysText = $(".splitname:contains('System')");
        $.each(sysText, function() {
            $(this).html($(this).text().replace(/System/g,"System<br />"));
        })
    }

...和 ​​4 个类似的 if 条件。

我想将它们合并到这样的函数中:

function splitCat(splitVar, splitName) {
    var split = $(".splitname:contains('splitName')");
    ...
    ...
}

我尝试了不同的方法,但它不起作用(我没有收到错误,但函数本身没有触发)。

【问题讨论】:

  • $(".splitname:contains(" + splitName + ")");

标签: javascript jquery function merge


【解决方案1】:

替换

$(".splitname:contains('splitName')");

$(".splitname:contains(" + splitName + ")");



function splitCat(splitVar, splitName) {
           var split = $(".splitname:contains(" + splitName + ")");
           ...
           ...
 }

【讨论】:

    【解决方案2】:

    试试

    function splitCat(splitName) {
        var els = $('.splitname:contains("' + splitName + '")');
        var regex = new RegExp(splitName, 'g');
        els.html(function(html){
            return $(this).text().replace(regex, splitName + '<br />');
        });
    }
    

    【讨论】:

      【解决方案3】:

      你可以这样做:

      function splitCat(splitVar, splitName) {
          if($(".splitname:contains(" + splitName + ")").length > 0) {
              var komText = $(".splitname:contains(" + splitName + ")");
              $.each(komText, function() {
                  $(this).html($(this).text().replace(splitName, splitName + "<br />"));
              })
          }
      }
      

      不确定在这种情况下splitVar 应该是什么。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2019-11-23
        • 2015-02-02
        • 1970-01-01
        • 1970-01-01
        • 2020-05-16
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多