Javascript-如何从响应中检索HTML标签的值

时间:2019-11-07 17:13:17

标签: javascript html

将HTTP GET发送到服务器。从服务器返回有效负载响应后,我需要提取html标签的值。我不知道执行此操作的代码

这是将HTTP GET发送到服务器的代码:

<input type="hidden" name ="Session-Key" value ="05aa6221dc982adb"/>

服务器返回了响应,我需要提取Session-Key的值:

{{1}}

我需要提取Session-Key的值,以便可以将其用于对服务器的下一个请求。在我的脚本中执行此操作的代码是什么?

2 个答案:

答案 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);
    }
}
// ...