好的,我正在尝试遍历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声明为变量一样。
有什么想法吗?
答案 0 :(得分:1)
if
语句中的比较要求使用==
或===
运算符。仅使用一个=
意味着您正在将值分配给属性。
答案 1 :(得分:0)
问题是这行:'pre [x] .innerHTML =“ CLMPRUN”'您正在分配文本而不是进行比较。这就是为什么它不断返回“ CLMPRUN”的原因。
请在此处检查:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Equality_comparisons_and_sameness