-1

我有一个应用程序,我需要向外部站点执行多个表单提交。我希望表单提交以打开新标签。我所做的是使用 javascript 创建一个表单元素,然后我只做一个form.submit(). 我知道只有一个人会成功。

我正在寻找解决方法。一种方法是使用 jsonp:

到目前为止我有这样的事情

$.ajax({
    数据类型:'jsonp',
    网址:路径,
    类型:“发布”,
    异步:“假”,
    contentType: '应用程序/x-javascript',
    数据:$('this').serializeArray(),
    成功:函数(html){
        如果(数据!=“”){     
                变种链接 = html;
                window.open(链接,'', ''); //在新打开的选项卡中打开链接!
            }
      },
      失败:函数(html){
        警报(html);
      }
    });
        返回假;
    });

但是,即使我确实指定了typeto post,我在 chrome 开发人员工具中看到我有一个实际的 get 被发送。我猜那是因为window.open。

有人可以建议实现这一目标的技术/

谢谢

4

1 回答 1

1

我需要向外部站点执行多个表单提交。我希望表单提交以打开新标签。我所做的是使用 javascript 创建一个表单元素,然后我只做一个 form.submit()。

如果您在 HTML中将表单元素的target属性设置为,并在循环中将表单元素实例的属性设置为每个外部 URL(例如,设置 URL,调用设置下一个 URL,调用),您应该能够多次提交表单。(您可能必须在处理用户生成的事件时执行此操作,即便如此,我也不能绝对确定浏览器不会——也不应该——阻止多个新标签的出现。)"_blank"actionsubmitsubmit

但我会强烈反对最初的要求,除非最终用户完全清楚当他们单击该按钮或其他内容时您将要做什么。

于 2013-05-10T21:26:40.187 回答