我的问题与此主题相关here.
我还需要一个带字符串的数字的jquery替换函数,但更精细。
我的php以这种格式返回一个数字,例如1.27
根据范围,此数字应替换为与范围匹配的特定字符串:
示例:
数字1.27处于1.0和1.5的“活动”范围内,因此替换为“活动”字符串。 1.51的值将在1.5到2.0的“不太活跃”范围内,替换字符串将是“不太活跃”的字符串。
非常感谢任何想法
答案 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';
你可能想要一本关于编程的好书,这真的不是一个问题。