我的网站上的代码无效,我无法找出原因......
以下是代码:
if (self.location.href == top.location.href) {
document.fastform.submit();
document.getElementById(fastform).submit();
}
现在如果我把一个表单提交以外的东西放到if语句中,它就可以了。就在我提交表单提交代码时,它永远不会起作用......
以下是表单代码:
<form id="fastform" name="fastform" ACTION="/amember.php">
<INPUT TYPE="text" NAME="myurl" ID="myurl">
<input type="submit" />
</form>
感谢帮助人员!
到目前为止,没有任何建议有效,我尝试了几种不同的变体,比如在getelementbyid中围绕fastform引用引号。这是我的整个javascript程序:
<script type="text/javascript">
function geturl() {
var locate = document.location
document.fastform.myurl.value = locate
}
window.onload = geturl;
if (self.location.href == top.location.href) {
var f=document.forms.fastform; f.submit();
}
</script>
感谢您的建议!
好的,所以在这里使用一些建议的代码我得到了它的工作。问题是if语句没有在正确的时间执行,我移动了一些东西,以便if语句最后执行,一切都开始工作了。这是完整的(正常运行的)代码:
<script type="text/javascript">
function geturl() {
var locate = document.location
document.fastform.myurl.value = locate
getmeoutofhere()
}
window.onload = geturl;
function getmeoutofhere() {
if (self.location.href == top.location.href) {
document.getElementById('fastform').submit();
}
}
</script>
<form id="fastform" name="fastform" ACTION="/amember.php" style="visibility:hidden;">
<INPUT TYPE="text" NAME="myurl" ID="myurl" />
<input type="submit" />
</form>
答案 0 :(得分:0)
document.getElementById('fastform').submit();
OR
var frm = document.getElementById('fastform');
frm.submit();
答案 1 :(得分:0)
我不确定它是否是 问题,但该行确实存在一个问题:
document.getElementById(fastform).submit();
我认为,问题在于您尝试按id
获取元素,但getElementById()
需要带引号的字符串,除非您已将字符串分配给表示的变量按fastform
。因此它应该是:
document.getElementById('fastform').submit();
或:
var fastform = 'fastform';
document.getElementById(fastform).submit();
此外,在fastform
语句中包含的第一行中,您似乎尝试使用if
变量,之后似乎已设置。< / p>
document.fastform.submit();
我建议稍微修改你的脚本,如:
if (self.location.href == top.location.href) {
var fastform = document.getElementById('fastform');
fastform.submit();
}
参考文献:
答案 2 :(得分:0)
您可以在函数中使用它:
var f = document.forms.fastform; f.submit();
它完全正常