我在PHP文件中有一个json对象,我想从JQuery.js文件访问它,它们都位于index.php页面中。
你知道怎么做吗?
的index.php
<?php
include('theFileThatContainsJson.php'); // say it's $json
?>
<html>
<head>
<script language="javascript" src="jquery.js" type="text/javascript"></script>
</head>
<body>
.............
</body>
</html>
在这里,我们在 jquery.js 文件中有什么,你可以看到我的作品(不起作用;)):
$.getJSON(<?php echo '$json'; ?>, function(data){ .... }
如何解决难题&lt;&lt;&lt;至少在这一刻对我来说:)?
答案 0 :(得分:2)
一种方式(讨厌!)就是做这样的事情......
<script language="javascript" src="jquery.js.php?data=<?php echo base64_encode($json) ?>" type="text/javascript"></script>
..并在您的jquery.js.php
文件中:
$.getJSON(<?php echo base64_decode($_GET['data']) ?>, function(data) { ... });
当然,这是一种可怕的做法,不应该真的做到。最好的方法可能包括:
theFileThatContainsJson.php
简单地echo
JSON,让jquery.js
只是执行AJAX请求来获取数据theFileThatContainsJson.php
实际打印出包含您可以使用的Javascript变量的<script></script>
标记答案 1 :(得分:0)
如果json不大:
$.getJSON('<?php echo '$json'; ?>', function(data){ .... }
甚至
$.getJSON('<?php include('theFileThatContainsJson.php'); ?>', function(data){ .... }
在第二种情况下,theFileThatContainsJson.php应该回显那个json。 在这两种情况下都应该在页面正文中
无论如何我不建议这样做(例如使用ajax)