我一直在瘋狂,我似乎無法想象如何通過ajax提交表單時停止刷新頁面。阿賈克斯Submit頁面刷新
我已經建立了一個爲的jsfiddle你看看:this link
我已經做了event.prefentDefault()並返回false;但似乎無法得到它的工作。我只是在愚蠢嗎?
最終的結果應該是當表單被提交時,表單區域應該消失並被「隱藏的」ajax_message取代,它簡單地讀取:「檢查你的手機」。
預先感謝你救了我的髮際線:)
我一直在瘋狂,我似乎無法想象如何通過ajax提交表單時停止刷新頁面。阿賈克斯Submit頁面刷新
我已經建立了一個爲的jsfiddle你看看:this link
我已經做了event.prefentDefault()並返回false;但似乎無法得到它的工作。我只是在愚蠢嗎?
最終的結果應該是當表單被提交時,表單區域應該消失並被「隱藏的」ajax_message取代,它簡單地讀取:「檢查你的手機」。
預先感謝你救了我的髮際線:)
我定你的提琴:
我剛分配事件處理程序悄悄地,如:
$('#idOfTheForm').submit(function(event){
...
});
您submit_number
功能是「文件準備就緒」事件處理中定義,並且僅可見內部的功能(範圍)和它的孩子,所以你不能使用它來自只有全局範圍可用的HTML。
如果你有螢火蟲或類似的東西激活,你會在錯誤控制檯中看到。
快速破解,使工作將取代
function submit_number(event) {
與
window.submit_number = function(event) {
從而明確地把你的功能在全球範圍內,但它是不推薦辦法。用您的單一目的功能污染全球範圍毫無意義。
一個更好的辦法是註冊功能從JS像這樣的事件處理程序:
$('form.kinkast_signup').submit(submit_number);
你也可能希望將ID添加到形式,並通過ID而不是類名引用它。
不使用表單中的「onclick」,而是將其綁定到JavaScript。
所以,與其
function submit_number(event)
做
$(form).submit(function(event)
<form method="post" class="kinkast_signup" onsubmit="submit_number(); return false">
<input id="login_email" type="text" name="to" />
<input id="signInButtonSubmit" type="submit" name="action" value="Send" />
</form>
然後
window.submit_number=function() {
//Prevent Default page refresh on submit
//event.preventDefault();
......
}
preventDefault()方法可以刪除。
功能時onclick事件發生應該簡單地返回false時調用。