测试innerHTML中的部分字符串

时间:2018-07-20 13:52:09

标签: javascript html autohotkey

好的,我正在尝试遍历iFrame中的html元素以捕获报告中的某些字段。 HTML的结构如下

html>frameset>frame>html>body>table>tbody>tr>td.set2>pre>(Text)

我用来捕获.innerHTML的JS如下

document.parentWindow.frames("Frame"B).document.all.tags("pre")[x].innerHTML

现在,以上一行使我能够捕获“ pre”元素的innerHTML,该元素包含报告名称和所需的信息。我目前正在IE控制台中进行操作,以在将其移至AutoHotKey之前正确获取我的JS,但下面是我试图用来遍历所有'pre'元素的功能

function preTest(){
for(x=0; x < pre.length; x++){
    if(pre[x].innerHTML = "CLMPRUN"){
      return pre[x].innerHTML;
    } else {
    return false;
    }
  }
};

现在,问题是当我运行该函数时,它仅返回“ CLMPRUN”。每当我在if语句中更改测试时,它都会返回,就像我已将pre [x] .innerHTML声明为变量一样。

有什么想法吗?

2 个答案:

答案 0 :(得分:1)

if语句中的比较要求使用=====运算符。仅使用一个=意味着您正在将值分配给属性。

答案 1 :(得分:0)

问题是这行:'pre [x] .innerHTML =“ CLMPRUN”'您正在分配文本而不是进行比较。这就是为什么它不断返回“ CLMPRUN”的原因。

请在此处检查:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Equality_comparisons_and_sameness