У меня есть страница, которая динамически вводит форму через ajax и отображает ее в модальном div (который находится над оверлейным div, охватывающим всю страницу). Это позволяет им сохранять определенные данные до закрытия окна. Все отлично работает, кроме одной вещи.
$('#save_close_form').find('*[name]').each(function(index, form_element) {
var cfe = (form_element.jquery == undefined ? $(form_element) : form_element);
console.log(cfe.attr('name') + " => " + cfe.attr('value'));
if (cfe.attr('name').match(/data\[/)) {
if (cfe.attr('type') == 'checkbox') {
if (cfe.attr('checked')) {
map[cfe.attr('name')] = 'on';
}
else {
map[cfe.attr('name')] = '';
}
}
else if (cfe.attr('type') == 'radio') {
// only get checked radio buttons
if (cfe.attr('checked')) {
map[cfe.attr('name')] = cfe.attr('value');
}
}
else {
map[cfe.attr('name')] = cfe.attr('value');
}
}
});
Часть в предложении else {} в конце вызывает элементы TextArea
и input type="text"
, но по какой-то причине она всегда видит cfe.attr('value');
как undefined
для TextArea
. Для этого я использую FF6.0 с jQuery 1.6.