JSON 解析错误:window.onload vs XMLHttpRequest
JSON parse error: window.onload vs XMLHttpRequest
我无法解析 PHP 在 AJAX- XMLHttpRequest()
之后返回的简单 JSON 对象。简而言之,这是奇怪的之处(使用简单的json进行测试(:
在页面加载时,如果 PHP 发送:
<script>window.onload=function(){JSON2HTML({htm:{world {innerHTML:"hello!"}}});}</script>
我的小JSON2HTML函数识别 TypeOf 对象并毫无怨言地解析 JSON。
但是,如果 PHP 通过 XMLHttpRequest()
返回完全相同的 JSON 字符串(来自相同的 PHP 变量(
{htm:{world:{innerHTML:"hello!"}}}
并且onreadystatechange
调用JSON2HTML
来处理它,然后JavaScript总是将其解释为字符串类型而不是typeof
对象,并且函数失败。
我已经将 php 响应标头设置为 "Content-Type:application/json;charset=utf-8"
,从响应字符串中删除了所有非 ascii 字符,并以各种可以想象的方式操作了 json 对象,并且总是得到相同的结果。我还尝试JSON.parse
ajax 字符串并得到"意外令牌"错误。
有谁知道这里可能会发生什么?
恰好包含有效 JSON 的字符串与实际的 JavaScript 对象不同。在转换为 HTML 之前尝试JSON.parse(your_response_string)
。它可能会抱怨缺少引号,因此请确保您的响应是 100% 有效的 JSON,如下所示:
{"htm":{"world":{"innerHTML":"hello!"}}}
相关文章:
- setInteval vs setTimeout
- $(this).prop('property') vs. this.property
- window.onload没有'无法在Android WebView中工作
- Js.erb VS按钮标记-不'不起作用.为什么?
- reactjs this.refs vs document.getElementById
- JavaScript-动态SVG-onload属性-未触发事件
- 在phonegap中为android调用onload函数的最佳方式
- image.onload事件和浏览器缓存
- 将函数从onclick修改为onload
- Performance: NaCl vs Emscripten
- 文本表示法VS.构造函数,用于在JavaScript中创建对象
- Advantages to DOMParser vs template & innerHTML
- JavaScript-===vs===运算符性能
- Combine onload, onresize and onclick
- onLoad function phonegap android
- 任何一种简单的方法都可以将带有onload的元素作为目标
- 开发第三方小部件-Angular vs jQuery vs普通的旧JS
- JSF 中的 JavaScript - “body onload=” vs 标签
- window.onload vs jQuery(document).ready
- JSON 解析错误:window.onload vs XMLHttpRequest