问题:我有一个表单,其表单 action="url" 与表单所在的页面 URL 不同。
页面 URL = www.page.com
表单操作 =“ http://www.differentserver.com ”
问题:发布表单时,它导航到表单操作 URL。
问题:仍然发布到操作 URL 但使用 jquery/ajax 留在表单页面上的最佳方式是什么
此外,操作 URL 会发回一个 xml,说明潜在客户是否通过。
问题:我有一个表单,其表单 action="url" 与表单所在的页面 URL 不同。
页面 URL = www.page.com
表单操作 =“ http://www.differentserver.com ”
问题:发布表单时,它导航到表单操作 URL。
问题:仍然发布到操作 URL 但使用 jquery/ajax 留在表单页面上的最佳方式是什么
此外,操作 URL 会发回一个 xml,说明潜在客户是否通过。
您不能使用 AJAX 将数据提交到另一个域。
但是,您可以使用旧的“hack”:
<form action="http://www.differentserver.com/" method="post" target="hiddeniframe">
...
</form>
<iframe style="display:none" name="hiddeniframe"></iframe>
这会将表单提交到其他域,但似乎不会影响当前文档。
您始终可以将其发布到隐藏的 Iframetarget='framename'
并挂钩到 Iframe 的 ONLOAD 事件以检测它何时完成。
在 differentserver.com 之后重定向或使用 curl 执行操作
发布整个表格
//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();