我正在使用 JavaScript 检查变量以查看它是否包含“http://”,如果不包含,则将 http 附加到它。使用下面的代码,但我得到的只是页面刷新/?myURL=
并附加到浏览器地址栏。删除该if(getUrl.indexOF("http://" == -1)
部分将使代码正常工作,但将缺少它包含的功能。我无法弄清楚我哪里出错了。我是否错过了 if else 语句中的中断或返回?
function placeUrl()
{
var str1 = "http://"
var getUrl;
var newUrl;
getUrl = document.getElementById('usersUrl').value;
if(getUrl != null)
{
if(getUrl.indexOf("http://" == -1)
{
newUrl = str1.concat(getUrl);
}
else
{
newUrl = getUrl;
}
document.getElementById('iframe1').src = newUrl;
}
return false;
}
还有我的 HTML:
<form onSubmit="return placeUrl()">
<input id="usersUrl" type="text" name="myURL" value="Enter a URL..." onblur="if (this.value == '') {this.value = 'Enter a URL...';}" onfocus="if (this.value == 'Enter a URL...') {this.value = '';}">
<input type="submit" value="Analyse">
</form>