0

我有这个 html 代码:

<form name="input" action="html_form_action.asp" method="post" id="formID">
Username: <input type="text" name="user" />
          <input type="submit" value="Submit" />
</form>

<script>
    for (i=0;i<10;i++) {document.getElementById('formID').submit; }
</script>

我正在尝试多次提交相同的内容。
但是你可以猜到,它总是提交一次,然后刷新页面。

我怎样才能避免这种情况并尽可能多次提交?

4

4 回答 4

3

除了使用 Ajax 之外,您还可以将表单的目标设置为“_blank”,从而使表单提交到新窗口或选项卡。

<form target="_blank" name="input" action="html_form_action.asp" method="post" id="formID">

浏览器可以打开任意数量的窗口,这样您就可以继续使用一段时间。

不过,这对用户来说会非常烦人。我希望你知道你在做什么。

于 2012-05-19T20:21:09.967 回答
2

使用 AJAX 以静默方式向服务器发送请求(即无需刷新)。

或者与其提交 10 次表单,不如将循环移动到您的 ASP 文件中 - 您的表单提交一次,服务器上会发生 10 次以上的事情。

你想做什么?

于 2012-05-19T20:11:49.027 回答
1

您必须通过 Ajax 提交表单。使用 JQuery.Ajax

$(function(){
  $.ajax({
    url:'html_form_action.asp',
    data: $("form").serialize(),
    // other setting
    success: function(){
      // what you do after post
    }
  });
});

其他设置请访问:http ://api.jquery.com/jQuery.ajax/

于 2012-05-19T20:15:22.980 回答
1

试试这个:

$('form[name="formname"]').submit(function(){
    form = $('form[name="formname"]').serialize();  
    url1 = 'http://...';
    url2 = 'http://...';

    $.ajax({
        url:url1,
        type:'POST',
        data:form,
        success:function(result){
            $.ajax({
                url     :url2,
                type    :'POST',
                data    :form,
                success :function(result){
                }
            });
        }
    });
    return false;
});

将 formname 替换为表单名称 Peplace url1 和 url2

于 2012-05-29T01:13:52.880 回答