Добрый день! П
Пишу небольшую функцию.
Ее задача проверять нужные поля за заполнения формировать json и отправлять на сервер через ajax
function sendmyform(idform,arr){
if(typeof idform!=="object") {
alert(idform +" - строка, надо Object")
return false
}
var inputs = $(idform).find("input");
if(inputs.length==0){
alert("ХЗ но input`ов 0");
return false
}
// Проверяем полня на атрибут "required", значения по умолчанию и пустоту
// arr - содержит значения всех полей в качестве ключя,name инпута
for(var i=0; i<=inputs.length; i++){
if($(inputs[i]).attr("required")=="required" && arr[$(inputs[i]).attr("name")] == $(inputs[i]).val() || $(inputs[i]).val()==""){
alert("Поле '" + arr[$(inputs[i]).attr("name")]+"' должно быть заполнено!");
error=true;
}
}
var tmp = new Array();
// Начало проблемы
// Перебираем в все инпуты формы и формируем json из атрибутов.
for(var i=0; i<=inputs.length-1; i++){
if($(inputs[i]).attr("name")!=""){
tmp[i] = {
name:$(inputs[i]).attr("name"),
title:$(inputs[i]).attr("title"),
value:$(inputs[i]).val()
};
}
}
// Разбиваем массив на строку
sendvar = tmp.join(',')
//alert ( JSON.stringify( sendvar ) );
//"[object Object],[object Object],[object Object],[object Object]"
$.ajax({
type:"POST",
dataType: "json",
url:"/sendorder.php",
data:sendvar,
success: function(answer){
//~ //~
}
});
}
Пробовал делать так
for(var i=0; i<=inputs.length-1; i++){
if($(inputs[i]).attr("name")!=""){
tmp += {
name:$(inputs[i]).attr("name"),
title:$(inputs[i]).attr("title"),
value:$(inputs[i]).val()
}+",";
}
}
tmp +={"all":i}
Тоже не помогло.