繁体   English   中英

如何将Python脚本中的JSON对象发送到jQuery?

[英]How can I send a JSON object from a Python script to jQuery?

我查看了API和各种资源,但我似乎无法使用AJAX从Python脚本中获取JSON对象。 我确定问题在于我如何处理JSON对象。

首先,在我的服务器上的python脚本中,我生成并打印一个JSON数组

import json
print "Content-type: application/json"
print 
print json.dumps(['Price',{'Cost':'99'}])

然后,在一个单独的html文件中,我尝试类似的东西

<body>
<div id="test">
</div>

<script>
 $(document).ready(function() {
  $.getJSON("http://www.example.com/cgi-bin/makeJSON.py", function(data) {
        $('#test').html("JSON Data: " + data.Price);
    });
});
</script>
</body>

但我什么都没得到。 我确定data.Price是错误的,但我也很确定我应该做的事情而不仅仅是打印json.dumps的结果

任何帮助表示赞赏! 在此先感谢,如果这是一个明显的问题,对不起。

在您的情况下,您已将JSON响应包含在array 要访问价格,您需要访问data[0] 您需要正确构建JSON数据。

Python脚本中的以下更改应允许您访问data.Price 如果您仍然遇到任何问题,请告诉我。

   import json
   print "Content-type: application/json"
   print 
   response={'Price':54,'Cost':'99'}
   print(json.JSONEncoder().encode(response))

请提供更多关于您要做的事情的背景信息。 你能把JSON对象硬编码到HTML中吗? 或者,你是否正在尝试做一些更有活力的事情,比如AJAX?

对于前者,查看Python生成的页面的HTML源代码。 它必须看起来像:

<script type="text/javascript">
   var MY_GLOBAL_JSON_OBJECT = { ... };
</script>

或者你可以在实际使用它的函数中吐出JSON对象,而不是先将它分配给全局变量。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM