如果刷新 AJAX 请求的内容 (ob_flush),内容会被加载吗?
我的意思是...让我们只发出一个 AJAX 请求并将结果插入 div#result 中。
在后端,脚本使用 ob_flush() 发送标头,但不会终止请求,直到它被终止(使用exit或ob_flush_end)
只有当请求终止(exit或ob_flush_end)时,内容才会加载到#result中)或者每次脚本通过 ob_flush 发送标头时都会加载它?
更新:
我将使用 jQuery load() 来制作请求和PHP来解答一下
I mean... Let's that we just make an AJAX request and inser the result inside a div#result..
In the backend the script use ob_flush() to send the header but not terminate the request until it's terminated (with exit or ob_flush_end)
The content will be loaded into the #result only when the request terminate (exit or ob_flush_end) or it'll be loaded every time the script send the header by ob_flush?
Update:
I'll use jQuery load() to make the request & PHP to answer it
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
是的,将返回内容,但 XHR 对象的 readState 不会设置为 4,因此如果您依靠它来更新 div(大多数 JS 库的 AJAX 自动更新程序都会这样做),您将不会自动看到它。
Yes, content will be returned, but the XHR object's readyState will not be set to 4, so if you are relying on that to update your div (which most JS libraries' AJAX auto updaters do), you won't see it automatically.