javascript — Uncaught referenceError: $ counter не определен

У меня есть функция в моем файле JS, которую я хочу дать значение переменной PHP с именем $ counter. Я получаю ошибку: $ counter не определен.

Вот код PHP:

<?php
$counter = 0;

foreach($res as $category){
echo '<div class="category" onmouseover="doChangeFontWeight($counter);" onmouseout="undoChangeFontWeight($counter);">';
echo '<p class="categoryDescription">'.utf8_encode($category['description']).'</p>';
echo '</div>';

$counter++;
}
?>

Javascript:

function doChangeFontWeight(counter) {
"use strict";

document.getElementsByClassName("categoryDescription")[counter].setAttribute("style", "font-weight: 900");}

-1

Решение

'<div class="category" onmouseover="doChangeFontWeight('.$counter.');" onmouseout="undoChangeFontWeight('.$counter.');">';

Переменные не передаются внутри одинарных кавычек в PHP.

3

Другие решения

Вы можете попробовать повторить, используя двойные кавычки вместо одинарных.

echo "<div class='category' onmouseover='doChangeFontWeight($counter);' onmouseout='undoChangeFontWeight($counter);'>";
echo "<p class='categoryDescription'>".utf8_encode($category['description'])."</p>";
echo "</div>";
0

По вопросам рекламы [email protected]