有没有办法将表单发布到更多网址?
我需要在javascript ..
例如:我有两个文件:1.php和2.php ..我希望表单将数据发布到这两个文件,但是转到1.php ..
你知道吗?
答案 0 :(得分:5)
您需要一个包含动作“1.php”和jQuery的表单。
$('#form_id').submit(function(event){
event.preventDefault();
var $th = $(this);
$.ajax({
type: 'post',
url: '2.php', // note: edited by Ryan
data: $th.serialize(),
success: function(){
$th.submit();
}
});
});
答案 1 :(得分:1)
使用JavaScript,是的
您需要使用JavaScript中提供的XMLHttpRequest函数进行一次调用,以对php.2脚本进行AJAX调用。然后可以使用document.forms["FORMNAME"].submit()
完成第二次调用。
像jQuery's Ajax functions这样的库使得使用XMLHttpRequest函数变得更容易。请参阅jquery.get(),jquery.post()和jquery.ajax()(a.k.a $ .get(),$ .post()和$ .ajax())函数文档
以下是使用jQuery的$ .post()和$ .ajax()函数进行AJAX调用的一些指南。
此处还有一个如何编码的示例框架:
<form id="exampleform" name="exampleform" action="1.php"> ... </form> <script type="text/javascript"> function submitForm() { ... // set up vars for $.post() call // Make the post call for the 2.php $.post( ... ); // Submit the form for 1.php document.forms["exampleform"].submit(); } </script>
答案 2 :(得分:0)
以上所有解决方案都应该有效,但请记住ajax只能在同一个域名中发布。这意味着您在http://example.com,您只能发布到example.com/etc或sub.example.com
如果你真的想要跨域发布,你应该创建一个空的ifram作为目标(id =“iframeid”),然后将表单的目标更改为:
<form target="_iframeid" action=""/>
之后您可以使用javascript发布到一个页面,然后更改操作网址并重新发布
答案 3 :(得分:-2)
快速而肮脏的方法是将表单发布到一个脚本,然后将脚本发布到第二个脚本。