[英]Pass variables and data from PHP to JavaScript?
這不是如何將變量和數據從PHP傳遞到JavaScript的副本。
在咨詢了上一個問題之后,我還有另一個問題:
我的問題是,當我在Js中獲得php數組並打印時,我只有[object] [object]
<?php
$tl = array(
0=>array('a', 'b', 1),
1=>array('c', 'd', 2)
);
?>
和javascript:
<script type="text/javascript">
var arr= <?php echo json_encode($tl ); ?>;
for(var i=0;i<3;i++){
alert(arr[i]);
}
</script>
您應該使用console.log
而不是alert顯示它:
console.log(arr[i]); //Check the result in you browser console
console.log:很好地格式化對象並允許遍歷它們。
希望這可以幫助。
切記 :數組中的對象不超過2個,因此循環運行不應超過2次。 第一個循環授予您訪問數組對象的權限,然后您可以運行一個循環以顯示/獲取對象的屬性。
<?php
$tl = array(
0=>array('a', 'b', 1),
1=>array('c', 'd', 2)
);
?>
var arr =;
for(var i=0;i<2;i++){
for(var j=0;j<3;j++){
alert(arr[i][j]);
console.log(arr[i][j]);// you can also show the value from the console of your browser
}
}
控制台的輸出
嘗試這個 ;)
alert()
如果不是基本數據類型,則顯示類型。 在您的情況下,正是Object才顯示[object] [object]
要調試JavaScript,應使用console.log()
和其他控制台方法,例如:
console.log();
console.debug();
console.warn();
console.error();
等等
在這里,您還要嘗試訪問嵌套數組的值,以便可以像這樣使用alert:
var arr= <?php echo json_encode($tl ); ?>;
for(var i=0;i<3;i++){
alert(arr[i][0] + " " + arr[i][1] + " " + arr[i][2]);
}
要么
使用嵌套循環來迭代內部數組的值;
嘗試這個:
<input type="hidden" id="array" value="<?php echo json_encode($tl); ?>" />
然后使用
<script type="text/javascript">
var arr = getElementById('array').value
for(var i=0;i<3;i++){
alert(arr[i]);
}
</script>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.