2015-12-09 144 views
0

我使用谷歌的reCAPTCHA我的註冊表格的底部,並使用JavaScript來驗證它,這樣,如果沒有完成和ReCaptcha,表單不會提交和干擾警報將出現在屏幕上。JavaScript表單提交驗證與其他的提交按鈕

但是,我有我在頁面頂部導航使用,如果你點擊任意點其中之一,該警報消息出現完成驗證碼3個其他提交按鈕。

我的JavaScript看起來像這樣:

的JavaScript

$('form').on('submit', function(e) { 
    if(grecaptcha.getResponse() == "") { 
    e.preventDefault(); 
    alert("You Must Complete The CAPTCHA Form!"); 
    } else { 
    alert("Complete!"); 
    } 
}); 

導航,如按鈕使用:

按鈕

<form action="#"> 
    <input type="submit" id="buttons" value="Enter"/> 
</form> 

提交在窗體底部提交按鈕:

提交

<form action="?" method="POST"> 
    <div id="html_element"></div> 
    <br> 
    <input type="submit" value="Submit"> 
</form> 

我曾嘗試加入:

id="final-submit"> 

到最後的按鈕,然後改變.on('submit').on('#final-submit')

但是,然後警報根本沒有出現。

我這樣做ID技術錯誤或會這樣根本不起作用?

乾杯

編輯

我不想改變對我的形式進入<input type="submit"><a href="#" id="button">

回答

2

您可以添加的ID來區分一個從其他形式提交。說出formrecaptchaid是「formid」。然後使用以下和所有應該很好

$('#formid').on('submit', function(e) { 
    if(grecaptcha.getResponse() == "") { 
    e.preventDefault(); 
    alert("You Must Complete The CAPTCHA Form!"); 
    } else { 
    alert("Complete!"); 
    } 
}); 
+0

完美,這工作的一種享受。我沒有想過命名整個表單,謝謝 –