Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/three.js/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 在新窗口中自动提交表单_Java_Php_Javascript_Magento - Fatal编程技术网

Java 在新窗口中自动提交表单

Java 在新窗口中自动提交表单,java,php,javascript,magento,Java,Php,Javascript,Magento,我已经为此工作了大约2个小时,似乎找不到解决办法。我知道你可以这么做: <form target="_blank" 这是可以做到的。。请检查以下代码: window1.jsp ----------------- <script type="text/javascript"> function formSubmit(){ document.forms['myform'].submit();

我已经为此工作了大约2个小时,似乎找不到解决办法。我知道你可以这么做:

<form target="_blank"

这是可以做到的。。请检查以下代码:

    window1.jsp
    -----------------

        <script type="text/javascript">
        function formSubmit(){
            document.forms['myform'].submit();
        }
        </script>

        <form action="window2.jsp" method="get" name="myform">
        <input type="text" name="name">
        <input type="button" name="clickMe" value="clickMe" onclick="formSubmit();">
        </form>



        window2.jsp
        -----------------
        <body>
        <%= (String)request.getParameter("name")%>
        </body>
window1.jsp
-----------------
函数formSubmit(){
document.forms['myform'].submit();
}
window2.jsp
-----------------

您可以以任何方式执行
document.forms['myform'].submit()
,我只是使用简单的按钮调用函数formSubmit来执行
document.forms['myform'].submit()

我认为您不能这样做,因为在没有用户交互的情况下打开新窗口会被浏览器的弹出窗口拦截器阻止,就像阻止弹出窗口一样。例如,您必须将其绑定到单击事件。

您当然可以这样做。这是基本代码

<html>
<head>
</head>
<body onload="document.f.submit();">
<form target="_blank" id='f' name='f' method='POST' action="http://www.yahoo.com">

</form>

<input type='button' name='btn' value='Submit' onclick='document.f.submit();' />
</body>
</html>

问题是(也许这只是一个坏例子)为什么要在加载时提交表单?如果页面刚刚加载,用户还没有机会输入任何内容。那么,用户的输入将被发布。如果是从数据库加载的内容,为什么要立即发布,而不是在提供原始页面之前在服务器上执行所需的任何操作


如果要将数据发布到另一个刚刚从db加载的窗口,为什么不打开一个单独的窗口并直接从数据库加载该数据?也许我错过了什么。

你在这个线程中尝试过解决方案吗?我尝试过,但没有成功:(谢谢你的回答,我想在新窗口中自动提交表单。很抱歉,我没有完全理解你的意思。“在新窗口中自动提交表单”是什么意思例如在body onload事件中。我想在没有用户交互的情况下提交它。我的表单在window1中,当我通过文档提交表单时。form.submit()然后它应该在新窗口上提交意味着将打开一个新窗口,所有发布的值都将显示在它上面。明白了吗??
<html>
<head>
</head>
<body onload="document.f.submit();">
<form target="_blank" id='f' name='f' method='POST' action="http://www.yahoo.com">

</form>

<input type='button' name='btn' value='Submit' onclick='document.f.submit();' />
</body>
</html>