У меня есть php-цикл, который генерирует несколько кнопок. Каждая кнопка меняет содержимое определенного div и обновляет некоторые вещи в базе данных с помощью ajax-запроса. Когда кнопка нажата, она вызывает функцию который выполняет запрос ajax. Проблема в том, что я не могу передать Div id как параметр в функции, если я объединю его со строкой. Только когда я пишу $ TickCrossDiv = $ i, он работает (только при использовании числа в качестве Div id он работает).Передача переменной php в javascript-функцию
Вот мой код:
for($i=0;$i<count($PlanningArray);$i++){
$TickCrossDiv = 'tickCrossDiv'.$i;
echo "<button onclick=\"SetActDone(
".$PlanningArray[$i]'PlanID'].",
".$PlanningArray[$i]['ActID'].",
".$TickCrossDiv.")\" >
Mark as done</button>"
}
Вот функция:
function SetActDone(PlanID,ActID,DivID)
{
$.ajax({
type: "POST",
url: 'testAjax.php',
data: {PlanID:PlanID, ActID:ActID},
success: function(data) {
$("#" + DivID).html('<p>Status: Done</p> <i style="color:greenyellow; " class="fa fa-check-circle fa-2x"></i>');
}
});
}
Я получаю сообщение об ошибке:
Uncaught Ошибка: Ошибка синтаксиса непризнанного выражение: #object HTMLDivElement
Большое спасибо !!! теперь он работает, я обертываю $ TickCrossDiv в кавычки и да, $ PlanArray [$ i] ['PlanID'] и $ PlanningArray [$ i] ['ActID'] являются целыми числами –