Я работаю над PHP и пытаюсь передать массив PHP в код javascript, чтобы динамически создать атрибут и установить для него значения.
Я отправляю PHP массив, как показано ниже.
PHP Код
$dataArray = array();
array_push($dataArray, $ticket['tickets']);
array_push($dataArray, $pendingTicket['pending_tickets']);
array_push($dataArray, $closedTicket['closed_tickets']);
Ниже следует массив PHP.
Array
(
[0] => 4
[1] => 3
[2] => 1
)
JS Код
<script type="text/javascript">
var jArray = <?php echo json_encode($dataArray); ?>;
var ticketGraphData = [];
for(var i=0; i<jArray.length; i++){
ticketGraphData.push(jArray[i]);
}
alert(typeof ticketGraphData);
console.log(ticketGraphData);
var anchor1 = document.getElementById("firstGraph");
var anchor2 = document.getElementById("secondGraph");
var att1 = document.createAttribute("data-values");
var att2 = document.createAttribute("data-values");
att1.value = ticketGraphData;
anchor1.setAttributeNode(att1);
att2.value = ticketGraphData;
anchor2.setAttributeNode(att2);
</script>
Я хочу передать значения ticketGraphData
как [4,3,1]
. Но здесь, когда я попытался утешить данные и возвратил предупреждение, он показывает Object
в предупреждении и отображает следующие данные в консоли:
После установки данных на attribute
это выглядит как
data-values="4,3,1"
Но я хочу сделать их как
data-values="[4,3,1]"
Где я совершаю ошибку? Есть ли другая альтернатива для достижения этой цели?