Получение "Object # <NodeList>не имеет ошибки метода click" - PullRequest
4 голосов
/ 15 ноября 2011

Я пытаюсь добавить несколько полей формы в отдельные элементы div.Но, добавив некоторые элементы div с кнопками, я получаю следующую ошибку, когда нажимаю кнопку внутри элемента div:

У объекта # нет метода 'click'

Я получаю этоошибка при перемещении тега </form> под вторым или третьим делением.Я не получаю ошибку, когда помещаю </form прямо под моим первым div.Форма имеет всего 4 деления с кучей кнопок.

Следующая кнопка просто показывает следующую связку кнопок (простой jquery slideup / slidedown).Каждая кнопка вызывает функцию с именем win(), например,

<input type=button class="team round1" value="a1" name="WIN0_1" onclick="win(this)"/>

Теперь для каждого элемента div я присвоил некоторым кнопкам одно и то же имя (например: name="WIN0_1" существует 4 раза)

Извините заэтот хаотичный пост, но я надеюсь, что у кого-то есть предложение

PS: что касается формы в отдельных divs, я следовал этому учебнику.

Ответы [ 2 ]

3 голосов
/ 15 ноября 2011

A NodeList объект представляет собой набор Node объектов, обычно возвращаемых childNodes или getElementsByTagName / getElementsByTagNameNS.Найдите в своем коде .click(, и вы, вероятно, обнаружите, что он присоединен к объекту, значение которого является результатом одной из этих операций, а не к объекту jQuery, как вы ожидали.

Вы можете легко воспроизвестиэта ошибка, чтобы понять, что я имею в виду, набрав в консоли JS следующее:

document.getElementsByTagName("div").click();

Если вы не можете найти причину проблемы, вам нужно опубликовать свой код.

2 голосов
/ 15 ноября 2011

хорошо, так что, основываясь на вашем коде http://jsfiddle.net/123js/Xm5Rt похоже, что, копируя div с входными данными, вы получаете набор кнопок в этой строке:

var winnerButton = winner.form.elements["WIN"+nextlevel+"_"+nextgame];

, поэтому winnerButton не1, но несколько кнопок.

при попытке вызвать click() для набора элементов вы получаете ошибку, о которой вы упомянули.

Решением может быть много вещей ... Чтобы знать, что вынеобходимо опубликовать полный html (form + div + inputs), чтобы мы могли лучше посмотреть.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...