社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  Jquery

使用jQuery只在div中选择带有其他字符的数字

Adam888 • 5 年前 • 478 次点击  

在下面的示例中,我需要选择每个div中的数字以相应地显示颜色编码的消息。

<div class="result_a">
  <label> A number </label>

  4
</div>

<div class="result_b">

  <label> B number </label>
  0
</div>

<div class="result_c">

  <label> C number </label>
  1
</div>

只有当每个div中只有数字时,使用下面的代码才有效。在选择数字之前,必须有一种方法首先除去每个div中的数字以外的所有数字,但我还没有找到这样的方法。

$(" [class^='result_'] ").each(function() {
  var count = $(this).text();
  var dh = $(this),
        dhn = dh.attr("class").match(/result_(.*)/)[1];
  var aa = '0';
  var msg = '0';
  if (count < 1) {
    var aa = ('green');
    var msg = (' Your ' + dhn + ' is very good');
  } else if (count >= 1 && count < 3) {
    var aa = ('blue');
    var msg = (' Your ' + dhn + ' is bad');
  } else if (count >= 3) {
    var aa = ('red');
    var msg = (' Your ' + dhn + ' is very bad');
  } else {
    var aa = ('');
  }
 $(this).removeClass('red green blue').addClass(aa).text(count + msg);
});

我也许可以使用所用的方法 here (复制到下面)但不确定如何使用这个来满足我提到的需要(只需选择每个div中的数字并将上面的jQuery应用到)。

function autospan() {
    var exp = /-?[\d.]+/g;

    $('*:not(script, style, textarea)').contents().each(function() {
        if (this.nodeType == Node.TEXT_NODE) {
            var textNode = $(this);
            var span = $('<span/>').text(this.nodeValue);
            span.html(span.html().replace(exp, '<span class="foo">$&</span>'));
            textNode.replaceWith(span);
        }
    });
}

$(autospan);

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/55062
 
478 次点击  
文章 [ 1 ]  |  最新文章 5 年前
Gene Sy
Reply   •   1 楼
Gene Sy    5 年前

它解析你的elem,只得到文本;

$(".result_c").clone().children().remove().end().text()

不需要你提供的代码