У меня есть большая php-страница с множеством сложных переменных, и я пытаюсь создать кнопки, которые будут воспроизводить видео в определенные моменты.PHP/JS: Многомерный массив PHP как Javascript Функция Параметр
я в настоящее время
<script>
function generateJSON(){
var ARRAY = <?php echo json_encode($HCount) ?>;
var vid = document.getElementById('my_video');
vid.currentTime = parseInt(ARRAY[0].eventTime);
}
</script>
<button id="goToTime" onClick="javascript:generateJSON()">genJS</button>
где эхо json_encode ($ HCount) выглядит
[{"gameID":"212345564","eventTime":"2693","plID":"523dfs",
"evArray":{"5645":"Cuyta","11245230":"98.0","2229":"","3318":"","15":""}},
{"gameID":"212345564","eventTime":"2293","plID":"523dft",
"evArray":{"5645":"Pkyyt","11245230":"28.0","2229":"","3318":"","11":""}}]
Этот код работает, однако я хотел бы arguement из generateJSON быть сам JSON. т.е.
<script>
function generateJSON(ARRAY){
var vid = document.getElementById('my_video');
vid.currentTime = parseInt(ARRAY[0].eventTime);
}
</script>
<button id="goToTime" onClick="javascript:generateJSON(<?php echo json_encode($HCount) ?>)">genJS</button>
^^ Этот код работает для простых массивов, таких как
<?php
$timeArray = array();
$timeArray[] = 345.1;
$timeArray[] = 789.1;
$timeArray[] = 1002.1;
$timeArray[] = 1200.12;
?>
но не для многомерного случая я требую, ошибка производится на хром
Uncaught SyntaxError: Unexpected token ;
после но нет; в линии. Я попытался добавить; к php json_encode без большой удачи. Любая помощь будет принята с благодарностью.
Спасибо!
'ARRAY [0]' ограничивает вас первым элементом массива. Вы считали, что используете что-то вроде 'JSON.parse'? https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/JSON/parse – heartyporridge
Просьба предоставить нам исходный код кнопки, как он отображается в HTML, а также удалить «javascript: "из обработчика onCLick. И вы можете опубликовать функцию generateJSON? –
Я использовал только ARRAY [0] в качестве тестового примера. В полном коде у меня есть глобальная переменная i, которая изменяется при пропуске плейлиста. Я использовал json.parse и json.stringify при использовании более простых массивов, но неспособность синтаксического анализа от кнопки делает ее сложной задачей. – NeutralA