数量大于1时变为复数
Make plural when quantity is greater than 1
我已经有了这个代码,但它没有按预期工作。
单词"piece"当数量大于1时应改为"pieces"
<span class="counter b">2 <span id="unitpcs"></span></span>
<script type="text/javascript">
var q = document.getElementsByTagName("span");
var a = myFunction(q.innerHTML);
document.getElementById("unitpcs").innerHTML = x;
function myFunction() {
if (a > 1) {
x = "pieces";
} else {
x = "piece";
}
}
</script>
目前,当数量等于一(1)件时,结果正确:1件。
如果数量变成二(2),则结果不正确:2件
正确的输出应该是“2 pieces”。
非常感谢任何解决方案。提前致谢!
- 您忘记指定
a
作为 myFunction()
的参数。
- 您忽略了
q
是两个 span
元素的数组。
- 您忽略了将
.innerHTML
转换为数字。
<span class="counter b">2 <span id="unitpcs"></span></span>
<script type="text/javascript">
var q = document.getElementsByTagName("span");
myFunction(parseFloat(q[0].innerHTML)); // first span, convert to number
document.getElementById("unitpcs").innerHTML = x;
function myFunction(a) {
if (a > 1) {
x = "items";
} else {
x = "item";
}
}
</script>
我已经有了这个代码,但它没有按预期工作。
单词"piece"当数量大于1时应改为"pieces"
<span class="counter b">2 <span id="unitpcs"></span></span>
<script type="text/javascript">
var q = document.getElementsByTagName("span");
var a = myFunction(q.innerHTML);
document.getElementById("unitpcs").innerHTML = x;
function myFunction() {
if (a > 1) {
x = "pieces";
} else {
x = "piece";
}
}
</script>
目前,当数量等于一(1)件时,结果正确:1件。
如果数量变成二(2),则结果不正确:2件 正确的输出应该是“2 pieces”。
非常感谢任何解决方案。提前致谢!
- 您忘记指定
a
作为myFunction()
的参数。 - 您忽略了
q
是两个span
元素的数组。 - 您忽略了将
.innerHTML
转换为数字。
<span class="counter b">2 <span id="unitpcs"></span></span>
<script type="text/javascript">
var q = document.getElementsByTagName("span");
myFunction(parseFloat(q[0].innerHTML)); // first span, convert to number
document.getElementById("unitpcs").innerHTML = x;
function myFunction(a) {
if (a > 1) {
x = "items";
} else {
x = "item";
}
}
</script>