Сделайте множественное число, когда количество больше 1 - PullRequest
0 голосов
/ 25 сентября 2018

у меня уже есть этот код, но он не работает должным образом.

слово «кусок» следует заменить на «куски», когда количество больше 1.

<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 штуки".

Любое решение высоко ценится.Заранее спасибо!

1 Ответ

0 голосов
/ 25 сентября 2018
  1. Вы забыли указать a в качестве параметра myFunction().
  2. Вы пропустили, что q - это массив из двух span элементов.
  3. Youзабыли конвертировать .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>
...