我是javascript的新手,我遇到了一个问题:我有一个方法,它通过我的jsp页面中的一个按钮调用Action。
问题是,我希望在加载jsp页面后立即执行此操作,而不必使用按钮事件。
我尝试在JSP主体中使用onload()事件。这确实会在加载后执行我的Action,但是,它停留在无限循环中,因为它一遍又一遍地加载页面。
<script language="JavaScript" type="text/javascript">
function send()
{
document.forms['thisForm'].submit();
}
</script
....
<body onload="send()">
<html:form action="/something/foo.do?method=methodFoo" method="post">有什么办法可以避免这种无限循环吗?非常感谢!
发布于 2014-04-16 10:54:15
您可以尝试AJAX在不提交表单的情况下执行您的操作。
发布于 2017-04-25 03:41:04
有许多可能的方法可以解决这个问题,但我将从我最喜欢的方法开始:
BODY onLoad="window.location.href='EXAMPLE.html';" onUnload="send();"这里发生的事情是,它做的第一件事是将你传递到一个新的网页("EXAMPLE.html"),但它必须在退出时运行你的JavaScript。这样做就不能进入无限循环。
另一种方法:
BODY onLoad="send();window.close();"使用此命令,它将在运行您的命令后尝试关闭窗口。我对此不是很感兴趣,因为window.close命令可能会根据他们使用的浏览器而有所不同,而且它几乎总是需要个人同意才能关闭它。但是,它可能会对你起作用。
https://stackoverflow.com/questions/23097924
复制相似问题