Помогите доработать JS script
Привет всем! Я написал форму (html/css/JS). В форме есть проверка при нажатии на кнопку "отправить", если формы не заполнены, вылезает алерт с предупреждением.
...
$('#registerButton').bind('click',function(){
if($('#formElem').data('errors')){
alert('Пожалуйста, исправьте ошибки в форме!');
return false;
}
});
});
...
Потом я формирую запрос вида Имя: Значение, при помощи такого кода:
$(document).ready(function(){
function showValues() {
var fields = $(":input").serializeArray();
jQuery.each(fields, function(i, field){
var fieldValue = field.value;
var fieldName = field.name;
var labelType = document.getElementById(fieldName).innerHTML;
var str = labelType + " => " + fieldValue + "<br>";
});
}
$(":checkbox, :radio").click(showValues);
$("select, textarea, :text").change(showValues);
showValues();
});
Мне нужно передать переменную str в документ zakaz.php. При помощи JS, как это можно сделать? Заранее спасибо! |
$.post("zakaz.php", { formString: str } );
а похапе ловите пост переменную formString |
Цитата:
|
$(document).ready(function(){
var str;
function showValues() {
var fields = $(":input").serializeArray();
jQuery.each(fields, function(i, field){
var fieldValue = field.value;
var fieldName = field.name;
var labelType = document.getElementById(fieldName).innerHTML;
str = labelType + " => " + fieldValue + "<br>";
});
}
$(":checkbox, :radio").click(showValues);
$("select, textarea, :text").change(showValues);
showValues();
$('#registerButton').bind('click',function(){
if($('#formElem').data('errors')){
alert('Пожалуйста, исправьте ошибки в форме!');
return false;
}else{
$.post("zakaz.php", { formString: str } );
alert('Всё пучком!');
return false;
}
});
});
});
|
Цитата:
|
Код сработал, сообщение отпарвилось, только в сообщении вышла самая последняя строчка. Как вы думаете, в чём может быть проблема?
|
по коду так и будет, вы для каждого поля перезаписываете str
а её нужно дописывать str += labelType + " => " + fieldValue + "<br>"; |
Цитата:
|
о, давно искал это!
|
| Часовой пояс GMT +3, время: 18:25. |