将HTTP GET发送到服务器。从服务器返回有效负载响应后,我需要提取html标签的值。我不知道执行此操作的代码
这是将HTTP GET发送到服务器的代码:
<input type="hidden" name ="Session-Key" value ="05aa6221dc982adb"/>
服务器返回了响应,我需要提取Session-Key的值:
{{1}}
我需要提取Session-Key的值,以便可以将其用于对服务器的下一个请求。在我的脚本中执行此操作的代码是什么?
答案 0 :(得分:0)
str是从api接收的html字符串形式的响应
var effect = [[1,100],[2,32], [5,3]];
var points = (function(){var adding = 0;for(var i = 0; i<effect.length;i++){adding+=effect[i][0];};return adding;})()
var score = (function(){var adding = 0;for(var i = 0; i<effect.length;i++){adding+=effect[i][1];};return adding;})()
var percentage=(score/points*100).toString()+"%";
this.effect = effect;
this.points = points;
this.score = score;
var percentage = points/score;
function list_effect(){
var effect_string = "";
for(var i = 0; i<effect.length;i++){
effect_string += ((points-effect[i][0])/score) - ((points)/score);
}
alert(effect_string);
}
if(percentage == 'NaN%'){
// alert('ERROR');
}else{
document.getElementsByClassName("agenda")[0].innerHTML = "<button type=\'button\' id=\'get_list\'>Get List</button>"+ document.getElementsByClassName("agenda")[0].innerHTML;
document.getElementsByClassName("agenda")[0].innerHTML += "<script>" + "this.effect=" + effect.toString() + ";\nthis.points=" + points.toString()+ ";\nthis.score=" + score.toString() +"document.getElementById(\"get_list\").addEventListener(\"onclick\", list_effect());" + "</script>"
}
答案 1 :(得分:0)
您可以轻松设置
xhr.responseType = "document"
,然后获取 xhr.responseXML ,而不是 xhr.responseText 。
xhr.responseXML 将是 HTMLDocument 的实例,因此您将能够使用 querySelector 方法来获取所需的数据。
// ...
if (xhr.responseXML) {
const sessionKeyNode = xhr.responseXML.querySelector('[name="Session-Key"]');
if (sessionKeyNode) {
console.log(sessionKeyNode.value);
}
}
// ...