после долгого исследования в Интернете. Я собираюсь сдаться, допустим, вы - моя последняя надежда. Моя проблема: я использую форму расписания для своей компании. Эта форма динамична, потому что через день вы можете выполнять несколько действий. Поля (включены в PHP страницы) являются:Проверка формы с помощью jQuery Подтвердить плагин
- день (текстовое поле)
- Часы (выпадающие)
- Notes (текстовое поле, где работник может писать заметки в течение дня)
Все перечисленные поля находятся в строке, заключенной в поле. В верхней части набора полей я надел кнопку, щелкнув по ней, я добавлю еще одну строку с данными, указанными ранее. Теперь, перед отправкой бакэнда, я хочу, конечно, поставить некоторые правила проверки которых является следующим:
- поле DAY должно быть требуется (это мой ключ в БД и я добавил плагин DatePicker)
- сумма часов весь день не может превышать 8 часов
Я пытался использовать Jquery Validate, но кажется, у меня есть две проблемы:
- Он не может справиться с каким-то массивы данных, идущих на e script php, который будет записывать в БД (например, представленные дни будут поступать в бэкэнд в массиве, я решил это, потому что количество дней, которое может быть записано, неизвестно до отправки)
- Он добавляет управляет только в первом ряду
Я попытался (как я читал в других сообщениях) добавить правила после создания новой строки, но в этом случае он работает с другими полями, только если я поставлю курсор внутри, я оставляю поле пустым, а затем я выхожу за пределы этого поля.
Прилагаю мой код, любая помощь будет оценена!
приветствия из Италии.
<script type="text/javascript">
$(document).ready(function() {
var i = 0;
//fadeout selected item and remove
$('.remove').live('click', function() {
$(this).parent().fadeOut(300, function(){
$(this).empty();
return false;
});
});
$('a#add').click(function() {
i++;
var options = '<p>Day <input type="text" id = "Day'+i+'" class = "Day" name="day[]"> </select> hours<select id = "hours'+i+'" class = "hours" name="hours[]"><option value="1">1</option><option value="2">2</option><option value="3">3</option><option value="4">4</option><option value="5">5</option><option value="6">6</option><option value="7">7</option><option value="8">8</option></select> Notes <input type="text" id="Note'+i+'" class = "Note" name="note[]"><a href="#" class="remove"><img src="images\\remove.png" height="20" width="20"></img></a></p>';
$(options).fadeIn("slow").appendTo('#extender');
});
$('.Day').live('click', function() {
$(this).datepicker('destroy').datepicker({
changeMonth: false,
changeYear: false,
stepMonths: false,
dateFormat: "dd-mm-yy",
showOn:'focus'}).focus();
});
});
</script>
это где динамические поля добавляются
<form name="rec_abs" method="post" action = "rec_on_db.php">
<fieldset>
<legend>Timesheet</legend>
<div id="extender"></div>
<p><a href="#" id="add"><img src="images\add.png" alt="" border=3 height=20 width=20></img></a> </p>
</fieldset>
</form>
<input type="submit" value="Send your timesheet"></input><br>
Если вы уже «попытались выполнить проверку jQuery» и не смогли, покажите нам, что неудачная попытка. Поскольку описание проблемы не имеет смысла в отношении поведения по умолчанию для плагина. – Sparky