Я использую serializearray()
jquery для сериализации полей в JSON. Он работает хорошо, но мне нужно это по строке, каждая строка имеет идентификатор, называемый "matricula"
.serializearray() поля jquery для JSON по строкам
Мне нужно коснуться, как:
jsonObj = [{"matricula":"14002028","faltas":"1","calif":"9.30"},
{"matricula":"14005038","faltas":"0","calif":"9.80"},
{"matricula":"14005499","faltas":"2","calif":"9.50"}];
Но мой код показывает мне это :(
jsonObj = [{"matricula":"14002028","faltas":"1"},
{"matricula":"14002028","calif":"9.5"},
{"matricula":"14005038","faltas":"0"},
{"matricula":"14005038","calif":"8.0"},
{"matricula":"14005499","faltas":"2"},
{"matricula":"14005499","calif":"10"}];
и это мой код:
var dataString = jQuery('#frm_CapCalif').serializeArray(); // Send data forms
jsonObj = []; // create JSON object
jQuery.each(dataString, function(i, field){ // get each value serialize
item = {}
item ["matricula"] = field.name.substr(0,8);
if (field.name.substr(8,1)==='F')
item ["faltas"] = field.value;
else
item ["calif"] = field.value;
jsonObj.push(item);
});
ПРИМЕЧАНИЕ : Ева ry поле называется matricula & F и matricula & C, и это показывает это «14005028F» и «14005028C» ... F означает faltas и C означает calif.
Я думаю, что это смущает, есть ли способ сделать это более простым? Спасибо
Я попробуйте удалить, если еще – depperm
Когда удалили IF THEN stataments значения повторяются. jsonObj = [{"matricula": "14002028", "faltas": "1"}, {"matricula": "14002028", "calif": "1"}, {"matricula": "14002034 »,« faltas »:« 9,5 »}, {« matricula »:« 14002034 »,« calif »:« 9.5 »}, \t {" matricula ":" 14004589 "," faltas ":" 1 "}, {"matricula": "14004589", "calif": "1"}]; –
Можете ли вы опубликовать, что такое dataString? – depperm