2014-12-30 3 views
1

Я пытаюсь использовать parsley.js Проверка с использованием простой формы, но не работает. Мой cdn работает правильно, но я не получаю подтверждения. Код:Parsley.JS форма проверки не работает

<!doctype html> 
<html> 
<head> 
     <title>Parsley.js form validation</title> 
     <script src="js/bootstrap.min.js"></script> 
     <script src="https://code.jquery.com/jquery-2.1.3.js"></script> 
     <script src="https://cdnjs.cloudflare.com/ajax/libs/parsley.js/2.0.6/parsley.min.js"></script> 
     <link rel="stylesheet"type="text/css"href="css/bootstrap.min.css"> 
     <script> 
      $('.parsley-validate').parsley(); 
     </script> 
</head> 
<body> 
<div class="container"> 
    <div class="row"> 
     <div class="span6 offset3"> 
      <h2>Parsley.JS</h2> 
      <form role="form" class="parsley-validate" data-validate="parsley"> 
       <label>Name</label> 
       <input type="text" class="form-control" name="name" data-parsley-required="true"><br/> 
       <label>Email</label> 
       <input type="text" class="form-control" name="name" data-parsley-required="true" data-parsley-type="email" data-parsley-trigger="change" /><br/> 
       <label>Website</label> 
       <input type="text" name="name" class="form-control" data-parsley-required="true" data-parsley-type="url" data-parsley-trigger="change" /><br/> 
       <input type="button" value="submit" class="btn btn-success"/> 
      </form> 
     </div> 
    </div> 
</div> 
</body> 
</html> 
+0

Что вы имеете в виду «не работает?» Какие-то ошибки или что-то еще? – Sefa

+4

Вы вызываете '$ ('. Parsley-validate'). Parsley();' в '' перед тем, как форма существует. Переместите скрипт в конец '' или заверните его в готовый документ -' $ (function() {$ ('. Parsley-validate'). Parsley();}) ' – Rhumborl

+0

ВСЕГДА используйте событие DOM Ready для кода javascript. Это всегда будет приводить к проблемам, если вы этого не сделаете. – Mayhem

ответ

0

Я не верю, что вам нужно использовать тег данных для проверки, если вы звоните $('.parsley-validate').parsley();. Посмотрите на предупреждение в рамках этого раздела на документы: Parsley.js Javascript Installation

EDIT: Я должен был быть более конкретным, вам не нужно data-validate='parsley на form, когда и с помощью $('.parsley-validate').parsley(). Вот что указывает вышеприведенная ссылка. Конечно, вы можете использовать теги данных для элементов для определения валидаций.

+0

Тэги данных определяют правила проверки. Проблема заключается в вызове функции перед тем, как элемент существует –

0

Вы звоните $('.parsley-validate').parsley(); в <head> перед тем, как форма существует. Переместить сценарий к концу <body> или обернуть его в документ, готовый:

<script> 
$(function(){   
    $('.parsley-validate').parsley(); 
}) 
</script> 
Смежные вопросы