我有一個產品頁面的格式如下:preventDefault()導致提交的表單重定向到另一個頁面?
<form id="ratingsForm" action='../resources/add_rating_to_product.php' method="POST">
<input type="hidden" name="productID" value="<?php echo $productID; ?>" />
<span class="rating">
<input type="radio" class="rating-input"
id="rating-input-1-5" name="rating" value="5">
<label for="rating-input-1-5" class="rating-star"></label>
...
<input type="radio" class="rating-input"
id="rating-input-1-1" name="rating" value="1">
<label for="rating-input-1-1" class="rating-star"></label>
</span>
</form>
這是採用單選按鈕只是一個簡單的星級形式。 我有一個JavaScript文件一旦單選按鈕被點擊
$(document).ready(function() {
$('input[name=rating]').change(function(){
$('form').submit();
});
});
,將提交表單我有另一個JavaScript文件時,提交表單和使用AJAX將其發佈到正確的文件,將觸發。
$(document).ready(function() {
$("#ratingsForm").on("submit",function(e){
e.preventDefault();
$.ajax({
type: "POST",
url: $(this).attr('action'),
data: $(this).serialize(),
success: function(response) {
alert('Thanks for rating');
}
});
})
});
Add_rating_to_product只是發佈信息並將其插入到數據庫中。
我遇到的問題是,而不是防止和重定向,e.preventDefault
重定向我的搜索頁面顯然沒有理由。我在我的產品頁面中檢查了我的所有代碼,並且沒有什麼可以將我重定向到那裏,所以問題是什麼?沒有preventDefault()
,它按預期重定向到add_rating_to_product.php
。
是的,就是這樣。謝謝! – user2827048