使用jquery替换用字符串替换数字

时间:2011-04-21 08:35:02

标签: javascript jquery replace

我的问题与此主题相关here.

我还需要一个带字符串的数字的jquery替换函数,但更精细。

我的php以这种格式返回一个数字,例如1.27

根据范围,此数字应替换为与范围匹配的特定字符串:

示例:

数字1.27处于1.0和1.5的“活动”范围内,因此替换为“活动”字符串。 1.51的值将在1.5到2.0的“不太活跃”范围内,替换字符串将是“不太活跃”的字符串。

非常感谢任何想法

3 个答案:

答案 0 :(得分:3)

访问页面中的文本可以使用jQuery完成,但其余的代码是纯Javascript。

您可以使用正则表达式查找数字,然后使用一个函数来确定要替换它的内容,如下所示:

var element = $('#id');
element.text(element.text().replace(/[\d\.]+/g, function(s){
  var n = parseDouble(s);
  if (n >= 1.0) {
    if (n <= 1.5) return "active";
    if (n <= 2.0) return "less active";
  }
  return s;
}));

答案 1 :(得分:1)

不幸的是,你不能用一行代码来做这件事。您必须执行以下操作:

$(".number").each(function(){
    var elm = $(this);
    var number = parseFloat(elm.text(), 10);
    if (number >= 1 && number <= 1.5) {
        state = "active";
    } else if (number >= 1.5 && number < 2) {
        state = "less active";
    }
    elm.text(state);
});

请参阅上面的example on jsFiddle

答案 2 :(得分:-1)

我不明白jQuery与它有什么关系,但这真的非常简单......

var state = 'Default';
if(value > 1 && value < 1.5)
 state = 'Active';
else if(value < 2)  
 state = 'Less active';
else if(value < 3)
 state = 'Sleeping';

你可能想要一本关于编程的好书,这真的不是一个问题。