Javascript将数据提交到表单两次
假设我有一个简单的表格:Javascript将数据提交到表单两次,javascript,forms,double-submit-problem,Javascript,Forms,Double Submit Problem,假设我有一个简单的表格: <form id="new_stuff"> <label>Title </label> <input id="title" maxlength="255" name="new[title]" size="50" type="text"><br /><br /> <label>Message </label> <input
<form id="new_stuff">
<label>Title </label>
<input id="title" maxlength="255" name="new[title]" size="50" type="text"><br /><br />
<label>Message </label>
<input id="message" name="new[message]" size="50" type="text" value="general"><br />
<label>Upload </label>
<input id="upload_data" name="new[upload]" size="30" type="file"><br />
<input id="submitform" action="form.php" type="button" value="submit me" formmethod="post"/>
</form>
标题
消息
上传
当用户填写数据并点击submit时,我需要一种方法来获取数据,更改标题(比如在用户输入的任何内容的末尾添加“TESTING”一词),然后提交表单两次;一次使用原始数据,另一次使用更改的数据
有谁能帮我用JS做这个的方法吗。谢谢使用一点jQuery可以让这变得非常简单
$( "#new_stuff" ).submit( function () {
var self = this;
// Save the form data as-is, before making any changes
var originalFormData = $( self ).serialize();
// Make changes to the values that you want to change.
$( "#title" ).val( $( "#title" ).val() + ' TESTING' );
// Serialize the form a second time
var modifiedFormData = $( self ).serialize();
// Post the form to your location.
$.post('url', originalFormData);
$.post('url', modifiedFormData);
// Return false, otherwise the form action will post (a third time).
return false;
});
这最好在服务器端处理。i、 e.发布表单一次,处理表单两次。您应该在服务器端执行此操作,因为它更安全、更容易、更好。+1在服务器端处理表单,但是,如果不是这样的话,看看这个事件。我没有访问服务器端的权限,所以需要在客户端完成。OP没有提到他想要jQuery。他没有说他不想要jQuery。jQuery可能是一个选项,但是表单据我所知,我认为serialize()不支持表单中的file元素。