Подтвердить что ты не робот

Отключенные поля не подхватываются serializeArray

(Вопрос обновлен, чтобы отразить реальную проблему)

Я только понял, что serializeArray не извлекает контент из отключенных полей.

Поля набора (улицы) заполняются путем выбора элемента из списка autosuggest. Как только это будет сделано, поля будут отключены. Я мог бы изменить это на read only, но я хочу, чтобы отключенный внешний вид, не меняя CSS.

Есть ли способ получить serializeArray данные захвата fro, отключенные поля?

Решение

Благодаря Мохаммаду я создал небольшой плагин, который помогает мне решить мою проблему:

(Fiddle)

    var form_data = $('form').serializeAll();

    (function ($) {
      $.fn.serializeAll = function () {
        var data = $(this).serializeArray();

        $(':disabled[name]', this).each(function () { 
            data.push({ name: this.name, value: $(this).val() });
        });

        return data;
      }
    })(jQuery);
4b9b3361

Ответ 1

Попробуйте это

var data = $('form').serializeAllArray();

И вот небольшой плагин, который используется

(function ($) {
  $.fn.serializeAllArray = function () {
    var obj = {};

    $('input',this).each(function () { 
        obj[this.name] = $(this).val(); 
    });
    return $.param(obj);
  }
})(jQuery);

Вы также можете попытаться включить весь свой элемент только для их сериализации, а затем отключить их после сериализации.

var myform = $('#form');
var disabled = myform.find(':input:disabled').removeAttr('disabled');
var serialized = myform.serializeArray();
disabled.attr('disabled','disabled');

Ответ 2

вы можете использовать readonly serializeArray() может прочитать его.