我在HTML頁面上獲取了一個表單,在某些情況下,該表單由javascript提交。問題在於瀏覽器窗口將其位置更改爲爲此表單指定的操作URL。有什麼辦法可以阻止它以這種方式工作嗎?以編程方式提交表單時阻止重定向
1
A
回答
2
使用JavaScript庫通過Ajax提交表單(XHR )或提交給iframe
完整的jquery示例:
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.js"></script>
<script type="text/javascript">
$(document).ready(function(){
$('#yourForm').submit(captureSubmit)
})
function captureSubmit(event) {
var frm = $(event.originalTarget);
$.ajax({
type: frm.attr('method'),
url: frm.attr('action'),
data: frm.serialize(),
success: function(results) {
// do stuff
alert(results);
},
error: function(result) {
// handle the error
alert(result.status + ' ' + result.statusText);
}
});
return false;
}
</script>
<form id="yourForm" action="foo.html" method="POST">
Name: <input type="text" name="name">
<button type="submit">Submit</button>
</form>
[編輯]使例子更完整。
0
與阿賈克斯
張貼
0
您可以:
- 與AJAX提交
- 提交到一個iframe
* JavaScript如何提交表單? – Tomalak 2009-10-22 16:16:51
你想達到什麼目的?你想留在同一頁面,還是想使用AJAX在「背景」中提交表單? – msparer 2009-10-22 16:19:34
我想要在用戶刷新(重新打開)或離開網頁時提交表單 – Vladimir 2009-10-22 16:31:15