我有一个非常简单的表单将几个字段POST回服务器。问题是,我需要两次点击输入按钮。在服务器端调试时,我发现当我点击第一个实例时,请求中的第一行是null。在第二次单击时,请求是正确的,因此它按预期方式进行。这只发生一次,获取html,尝试第一次保存表单 - >不起作用,第二次点击 - >随后工作,直到我刷新页面 - >单击即可正常工作(并且数据已更改)
只需点击一下,您能帮助解决问题吗?
我在Google Chrome上试过这个。
这是普通的html,根本没有客户端脚本。这是html中唯一的div标签。没有头标。
<div>
<form method="POST" action="/POSTrequest">
Title:<br/>
<input type="text" name="title" style="width:100%"/>
<br/>Text:<br/>
<textarea style="width:100%" name="text"></textarea>
<br/>
<br />
<input type="submit" value="save"/>
</form>
</div>
答案 0 :(得分:0)
html中的以下更改似乎很好。
<form method="post" action="/POSTrequest" enctype="multipart/form-data">
... (same as in the question)
</form>
确保对POST请求的响应有一个标题&#39; Connection:keep-alive&#39;而不是关闭套接字(服务器端的Socket(Java)实例)
答案 1 :(得分:-1)
您可以在表单元素中添加id属性,并在Javascript中尝试此操作:
<input type="button" value="save" ondblclick="save()">
<script> function save(){document.getElementById('myForm').submit()} </script>