jQuery/PHP-根据DIV的值使用不同的标签

jQuery/PHP-根据DIV的值使用不同的标签,php,jquery,wordpress,Php,Jquery,Wordpress,我有两个div,和 我想设计一个if/else语句,这样,如果“number”中的值为1,它将返回一个标签,例如“User”,而如果数字为2或更高,它将变为“Users” 是否有方法检查.number的值,然后根据该值返回标签 此外,在同一页上还有5个“数字”和“标签”实例。每个数字都将通过从数据库查询其值(Wordpress自定义字段Meta)返回 此外,每个实例的标签都不同,第一个可能是“用户”,而第二个可能是“产品”,等等 我该怎么做我需要的 下面是我的代码示例: <div clas

我有两个div,

我想设计一个if/else语句,这样,如果“number”中的值为1,它将返回一个标签,例如“User”,而如果数字为2或更高,它将变为“Users”

是否有方法检查.number的值,然后根据该值返回标签

此外,在同一页上还有5个“数字”和“标签”实例。每个数字都将通过从数据库查询其值(Wordpress自定义字段Meta)返回

此外,每个实例的标签都不同,第一个可能是“用户”,而第二个可能是“产品”,等等

我该怎么做我需要的

下面是我的代码示例:

<div class="data-item employees">
     <div class="number"><?php echo $sc_data_employees; ?></div>
     <div class="label"></div>
</div>
<div class="data-item products">
     <div class="number"><?php echo $sc_data_products; ?></div>
     <div class="label"></div>
</div>

试试这个:

var users = parseInt($(".number").text(),10);
var label = (users == 1) ? "user" : "users";
$(".label").text(label);
如果用户数不是一个整数,例如
12.3456
,请使用
parseFloat()
而不是
parseInt()
尝试:

$('.number').each(function(){
    $(this).next('.label').html( ($(this).text()==1)?'user':'users');
});​​​​​​​​
这将运行class number的所有元素,并更改元素label的下一个实例。根据div的排列方式,可能需要将.next()更改为另一个函数

更新:根据您的修订,尝试以下操作:

$('.number').each(function(){
    var plural = $(this).parent().attr('class').split(' ')[1];
    var singular = plural.substring(0, plural.length - 1);
    $(this).next('.label').html( ($(this).text()==1)?singular:plural);
});​

或者,您可以在使用PHP输出到浏览器之前执行此操作

$number = 1; // The number from your database

$text = ($number == 1) ? "User" : "Users"; //

$output = '<div class="number">{$number}</div>
           <div class="label">{$text}</div>';

echo $output;
$number=1;//数据库中的号码
$text=($number==1)?“用户”:“用户”//
$output='{$number}
{$text}';
echo$输出;

当你说“数字中的值”时,你是指文本,如
1
?是的,它将是一个纯文本数字,如“20”或“3”或“1000”,等等。你想根据数字的内容更改标签的内容吗?是的,没错,这类事情应该在提供文档之前用PHP完成,因为你是从数据库中获取数据的。当然,除非您使用的是AJAX。@Blazemonger感谢您的修复-我想我们在修复时弄乱了彼此的编辑:)如果我想为每一个都添加一个不同的标签怎么办?这看起来效果不错,但我希望每个标签都不同,例如,第一个可能是“用户”,而第二个可能是“产品”?对不起,我应该在原始问题中说明你能发布你实际使用的HTML吗?这样我就可以创建一个完全适合的代码。好的,基于这个代码,我的答案应该仍然有效。示例JSFIDLE:是的,但是如何为每个标签设置不同的标签文本?你的提琴样本中的每一个都使用了“用户”,但举例来说,根据我上面的代码,第一个标签应该是employee/employees,第二个标签应该是product/products,如此等等,我没有意识到你需要它。等一下,最新消息来了。