我正在尝试获取iframe页面的页面名称(位于同一服务器上),如果它不是以下名称:'index1.php'
或'indexTOM.php'
则不如果它是该页面名称,则执行任何操作,然后重新加载iframe。现在我已经设置了它,但由于某种原因它不起作用,结果是总是为真,iframe永远不会重新加载?
//Check URL of IFRAME
var currentUrl = document.getElementById("frmcontent").contentWindow.location.href;
var word = 'index1.php';
var regex = new RegExp( '\\b' + word + '\\b' );
var resultNfo = regex.test( currentUrl );
if (resultNfo = true){ document.getElementById("frmcontent").contentDocument.location.reload(true); }
var word = 'indexTOM.php';
var regex = new RegExp( '\\b' + word + '\\b' );
var resultNfo = regex.test( currentUrl );
if (resultNfo = true){ document.getElementById("frmcontent").contentDocument.location.reload(true); }
alert('URL is: '+currentUrl+'\n'+resultNfo);
答案 0 :(得分:3)
你为什么不这样做resultNfo = currentUrl.indexOf('indexTOM.php') !== -1
?
这里也有很多问题,你应该使用for
循环
未经过测试的演示
var urls = ['indexTOM.php', 'index1.php'],
frame = document.getElementById('frmcontent').contentDocument;
for( var i = 0; i < urls.length; i++ ) {
var url = urls[i];
if( frame.location.href.indexOf(url) !== -1 ) {
frame.location.reload()
}
}
尝试上面代码的内容,它更清晰。