0
我一直在這個代碼表單提交使用jQuery和AJAX
$("#library").submit(function(e){
//return false;
e.preventDefault();
dataString = $("#library").serialize();
$.ajax({
type:"POST",
url:"<?= base_url() ?>index.php/library/comment",
data: dataString,
dataType: 'json',
success: function(data){
$("#librarycomment").val("");
$('#comment-list').prepend('<li><div class="avatar"><img src="<?= base_url();?>asset/css/library/images/picture.jpg">' +
'</div>' + '<div class="colset">' + '<div class="author">' + data.user +
' <strong>' + data.date + '</strong>' +
'</div>' + '<div class="comment-content">' +
data.text + '</div></div></li>').find("li:first").hide().slideDown('slow');
}
});
});
如果我想有一個漂亮的表單驗證,而不必刷新瀏覽器。上面的代碼有些不起作用。
我試圖替換e.preventDefault();與
- e.stopPropagation
- 返回假
所有給予什麼都沒有。表單提交數據並將數據存儲到數據庫。然而,ajax部分並不像我期望的那樣安靜。
有誰知道我在這裏錯過了什麼?
你可以在成功函數中返回false或preventdefault嗎? – FLX
嗨FC感謝您的回覆。即使我把這些放在成功之中,它仍然行不通。但是,我通過從.submit()更改爲.click()來找到解決方法。很明顯,我必須改變我的表單以及
我不知道這是否是一種更好的方式,只需點擊用戶無法用「Enter」鍵提交,這對可訪問性就不好。也許替換點擊('提交')。 – FLX