javascript - 如何使用 js 解析 XMLHttpRequest 的 HTML 响应文本?
问题描述
这是我的代码:
const http = new XMLHttpRequest();
const url = 'http://page/';
http.open('get', url, false);
http.setRequestHeader('Content-type', 'application/x-www-form-urlencoded');
http.onreadystatechange = function ()
{
if(http.readyState === 4)
{
if(http.status === 200 || http.status == 0)
{
let str = (http.responseText);
results = document.getElementById('test').value;
alert(results)
}
}
}
http.send();
如何将 str 排序为 html,以便使用 document.getElementById 获取值?
我努力了
var doc = document.implementation.createHTMLDocument("example");
doc.documentElement.innerHTML = http2.responseText;
let test1 = doc.body.querySelector("#test").value;
它有效,但它给了我一个空值,当我查看响应预览时,我发现值栏是空的,选项就像出厂默认状态一样。当我查看页面的 html 代码时,在这一行中找到了值
<script language=javascript>Transfer_meaning('test','\12345678');</script>
解决方案
如果 responseText 是纯文本 HTML,您可以这样做
document.getElementById('test').innerHTML = str;
推荐阅读
- addeventlistener - 收听 Firefox WebExtension 侧边栏关闭
- java - 用 Kotlin 数据类替换 Java DTO 类的问题
- javascript - 使用正文执行获取请求 - 节点 js
- vba - 缺少所需列的 vba 错误处理
- php - PHP中的喜欢/不喜欢系统
- git - 需要在 git remote 上恢复提交
- php - Nginx、PHP - 发生错误。抱歉,您要查找的页面目前不可用。请稍后再试
- swift - 具有慢速互联网连接的 avplayer 在第一帧后无法正常工作
- android - 将 Google Play 服务版本从 11.2.2 升级到 15.0.0 后应用程序崩溃
- atom-editor - 仅在 Atom 中删除文本文件的尾随空格