Ключ JQuery не определен в локальном хранилище

0

Желая иметь возможность опроса нескольких человек, затем обновить и т.д. Необходимо, чтобы несколько человек могли хранить опрос на основе их имени, поэтому каждый результат опроса не перезаписывается при повторном представлении. Попытка получить ключи, хранящиеся для каждого текстового поля, выводит "человек". "Name" = значение. вместо этого im получает значение undefined.name =

<p>
<label>Name:</label> <input name="MainName" type="text"/>
</p>

$('form').submit(function() {
 var person = $("#MainName").val();
 $('input, select, textarea').each(function() {
   var value = $(this).val(),
       name = $(this).attr('name');
       localStorage[person + "." + name] = value;

     console.log('stored key: '+name+' stored value: '+value);
});   
});

Если проблема не показывает выше, вот все: http://jsfiddle.net/5sG8v/

  • 0
    MainName - это имя элемента ввода, а не ID.
Теги:
local-storage

3 ответа

2
Лучший ответ

Вы получаете undefined возвращенный, потому что вы пытаетесь ссылаться на ID, который не существует: MainName - это name вашего поля ввода, а не id. Дайте ему идентификатор MainName или что-то, что щекочет ваше воображение:

<label>Name:</label> <input id="MainName" name="MainName" type="text"/>
  • 0
    Конечно, я все еще новичок, но спасибо за помощь! казалось, добился цели!
  • 0
    как вы идете об использовании 2 идентификаторов? var person = $ ("# имя", # "фамилия") и т. д.
Показать ещё 2 комментария
1

Вы использовали $("#MainName").val(); для получения значения элемента с идентификатором MainName.
# используется для доступа к элементу с идентификаторами, но вы не определили этот идентификатор в html.

Поэтому определите атрибут ID текстового поля следующим образом:

<label>Name:</label> <input id="MainName" name="MainName" type="text"/>
1

Элемент # предназначен для выбора элементов с заданным атрибутом id. У вашего input нет id.

Вы можете указать элементу id или выбрать на основе атрибута name:

$('input[name="MainName"]');

Ещё вопросы

Сообщество Overcoder
Наверх
Меню