表单操作URL与页面URL不同


Form action URL is different than page URL

问题:我有一个表单,它的表单action="url"与表单所在的页面url不同。

页面URL=www.page.com
表单操作="http://www.differentserver.com">

问题:发布表单时,它会导航到表单操作URL。

问题:使用jquery/ajax 仍然POST到操作URL但仍停留在表单页面上的最佳方式是什么

此外,动作URL还发布了一个xml,说明潜在客户是否通过。

您不能使用AJAX将数据提交到另一个域。

然而,你可以使用一个旧的"黑客":

<form action="http://www.differentserver.com/" method="post" target="hiddeniframe">
    ...
</form>
<iframe style="display:none" name="hiddeniframe"></iframe>

这会将表单提交到其他域,但似乎不会影响当前文档。

您可以始终将其发布到隐藏的Iframe target='framename',并挂接到Iframe的ONLOAD事件中,以检测它何时完成。

在differentserver.com之后重定向,或者使用curl执行操作

Jquery能很好地完成

张贴整个表单

//Jquery Code
$.post("test.php", $("#form_name").serialize(), function(result){
 // return 
 var aa = result;
});

张贴表单的特定部分

//Jquery Code
 /* get some values from elements on the page: */
 var $form = $( this ),
  term = $form.find( 'input[name="s"]' ).val(),
  url = $form.attr( 'action' );
 /* Send the data using post */
 var posting = $.post( url, { s: term } );
 /* Put the results in a div */
 posting.done(function( data ) {
   var content = $( data ).find( '#content' );
  $( "#result" ).empty().append( content );
   });

如果您使用"提交"按钮,这将使表单无法正常投递。

 /* stop form from submitting normally */
  event.preventDefault();