select value = json_encode($ array)没有返回整个数组

时间:2017-06-04 16:57:22

标签: javascript php arrays

我测试了以下内容:

<? echo json_encode($array) ?>    outputs: ["PG","Kevin Sad","8000","12"]

当我将它放在我的脚本函数选择的表单选项值中时:

<option value=<? echo json_encode($array) ?> > option1 </option>      

当我单击SUBMIT按钮并从脚本触发以下功能时:

function submit_button(){
    var data=  player1.options[player1.selectedIndex].value;
    document.getElementById('print_result').innerHTML = data; 
}

只在div id =&#34; print_result&#34;内输出以下内容: :

["PG","Kevin

空间角色发生了一些事情&#34; &#34;我无法弄清楚..

我预计整个阵列会特别显示,包括缺失部分:

 Sad","8000","12"]   

1 个答案:

答案 0 :(得分:0)

要么必须转义双引号和/或使用单引号来包含JSON。

参见示例以及它如何影响结果。

let options = document.querySelectorAll('option');
console.log(options[0].value, options[1].value);
document.getElementById('out').innerHTML = options[1].value;
<option value=["PG","Kevin Sad","8000","12"]> option1 </option>
<option value='["PG","Kevin Sad","8000","12"]'> option2 </option>
<div id="out"></div>