我有以下幾點:爲什麼我的FORM在Ajax調用後被提交?
<form id="form" action="xxx" method="get">
<input type="checkbox" name="cb">
<button onclick="update();">Update</button>
</form>
<script>
function update() {
var data = $("#form").serialize();
$.ajax({
url: "/api/m/x",
type: "post",
data: data
}
).done(function(results,status) {
alert(status);
}).fail(function(error, status) {
alert(status);
});
}
</script>
當我點擊更新按鈕,Ajax調用是/api/m/x
製成,一個警報被觸發。到現在爲止還挺好。但是,在我關閉警報對話框後,表單已提交!瀏覽器發送到xxx?cb=on
,例如,如果我勾選複選框。
這是怎麼發生的?我的表單沒有<input type='submit'>
元素。誰觸發提交表單?
我嘗試將return false;
添加到update
函數,但行爲仍然相同。
你的成功在哪裏ss – unixmiah
這是在'完成'的權利? –
因爲你沒有做任何事情阻止它被提交 – j08691