我搜索了網絡,我試過在所有地方實施「防止默認」和「返回錯誤」的聲明,但我似乎找不到防止此表單提交併重新加載頁面的方法。它只在表單被驗證時纔會重新加載。我是一個初學者,但我真的很努力地實現腳本來驗證表單(它具有「post」 - 方法和「#」作爲動作),並進行ajax調用。這是一個學校任務,對於你們可以給予的任何指示都會優雅。有沒有辦法阻止用這個javascript/jquery提交表單?
$(document).ready(function()
{
$("#submit").click(function()
{
var gbname = $("#gbname")[0];
var gbmessage = $("#gbmessage")[0];
formFields = [gbname, gbmessage]
var warning = false;
for (i=0; i<formFields.length; i++)
{
formFields[i].style.backgroundColor = "white";
if (formFields[i].value == "")
{
formFields[i].style.backgroundColor = "red"
$(formFields[i]).bind("keyup", resetBgColor);
$(formFields[i]).bind("change", resetBgColor);
warning = true;
}
}
if (warning == true)
{
alert("Vänligen fyll i fälten korrekt!");
return false;
}
else
{
$.post('ajax.php', {gbname: gbname, gbmessage: gbmessage},
function(data)
{
$("#successmessage").html(data);
$("#successmessage").hide();
$("#successmessage").fadeIn(1500); //Fade in error/success-meddelande
var comment = $("<div class='film2'><p class='names'><b>Namn:</b>" +gbname+ "</p> <p class='messages'><b>Meddelande:</b>" +gbmessage+ "</p></div>");
$("#kommentarer").prepend(comment);
clearForm();
});
return false;
}
return false;
});
});
確保你的按鈕是一個普通的按鈕,而不是一個提交按鈕:) – antlersoft 2013-04-29 17:39:10
而不是'點擊'嘗試使用'$('form')。submit(function(){return false;})' – 2013-04-29 17:40:11
每當按鈕被點擊,你正在綁定具有事件的表單元素。這是一個壞主意。 – epascarello 2013-04-29 17:41:18