好,
我仍然是一名javascript学生,所以我需要一些帮助。我正在使用parsley.js进行表单验证,然后使用jquery ajax来提交表单。我一直在控制台中收到这条温暖的消息,将欧芹绑定到现有元素。我已按照所有说明进行操作,但仍继续收到警告。
如何摆脱警告?
代码可以在这里看到:http://madmen6raphics.com/clients/marble/
提前感谢。
以下是代码:
HTML:
<form action='mail_form.php' data-parsley-validate id='newsletter_signup' method='post' name='newsletter_signup' novalidate>
<fieldset>
<legend>Joing our mailing list!</legend>
<label for='name'>name:</label>
<input data-parsley-minlength='5' id='name' name='name' placeholder='John Doe' required type='text'>
<label for='email'>email:</label>
<input id='email' name='email' placeholder='johndoe@me.com' required type='email'>
<input name='Submit' type='submit'>
</fieldset>
</form>
的javascript:
$( '#newsletter_signup')香菜();
答案 0 :(得分:7)
你得到两个错误
您必须在现有元素上绑定Parsley。
但这些错误与您发布的代码无关。
在...js/site.js
中,您有以下代码:
$(document).ready(function() {
$('.slider').flexslider({controlNav: false,slideshowSpeed: 3000,directionNav: true});
$('input').iCheck({checkboxClass: 'icheckbox_square-yellow',radioClass: 'iradio_square-yellow',increaseArea: '20%'});
$('#newsletter_signup').parsley();
$('#request_a_quote').parsley();
$('#contact').parsley();
var form = $('#newsletter_signup');
(...)
您使用以下ID将欧芹绑定到三个元素:newsletter_signup
,request_a_quote
和contact
。
问题是,在当前页面中,您只有元素newsletter_signup
。如果您执行console.log($('#request_a_quote'))
,您将看到一个空对象。
因此,要解决您的问题,您需要删除将parsley绑定到不存在的元素的代码。或者,您可以更改代码,以便仅在元素存在时绑定欧芹。像这样:
$(document).ready(function() {
$('.slider').flexslider({controlNav: false,slideshowSpeed: 3000,directionNav: true});
$('input').iCheck({checkboxClass: 'icheckbox_square-yellow',radioClass: 'iradio_square-yellow',increaseArea: '20%'});
if ($('#newsletter_signup').length > 0 )
$('#newsletter_signup').parsley();
if ($('#request_a_quote').length > 0 )
$('#request_a_quote').parsley();
if ($('#contact').length > 0 )
$('#contact').parsley();
var form = $('#newsletter_signup');
(...)