jquery удалить поле ввода формы - PullRequest
0 голосов
/ 23 декабря 2010

Хорошо, я новичок в jQuery и застреваю на .remove() после нажатия

JQuery:

$(document).ready(function () {
  $('.remove_group').click(function(){
    var remove_group_name = $(".test").val();
      $("#group_users["+remove_group_name+"][]").remove();
  });
});

HTML-форма:

<input type="text" class="test" name="group_users[test][]" id="group_users[test][]" value="test"> <a href="#" class="remove_group" id="test">Remove Group</a>

Я хочу, чтобы при нажатии кнопки «Удалить ссылку группы» удалялось поле ввода, все, что я получаю, когда щелкаю по ней, - это веб-страница, перемещающаяся в начало ...

единственное предупреждение на странице: Expected attribute name or namespace but found ']'.

Ответы [ 4 ]

2 голосов
/ 23 декабря 2010

Идентификаторы в документах HTML не могут содержать квадратные скобки ([]).Из HTML spec :

токены ID и NAME должны начинаться с буквы ([A-Za-z]) и могут сопровождаться любым количеством букв, цифр ([0-9]), дефисы ("-"), подчеркивания ("_"), двоеточия (":") и точки (".").

Практически следует ограничитьсами буквы, цифры, дефисы и подчеркивания.

1 голос
/ 23 декабря 2010

Прежде всего, ваши идентификаторы содержат недопустимые символы (см. Ответ lonesomeday).
Теперь, если у вас всегда есть ссылка рядом со входом, вы можете написать что-то вроде this

Еще одна вещь, при нажатии на ссылку, страницы прокручиваются вверх, это потому, что вы не запрещаете поведение по умолчанию LINK , используя либо e.preventDefault; или return false;

0 голосов
/ 23 декабря 2010

Попробуйте отладчик:

  • Почему имя и значение класса совпадают
0 голосов
/ 23 декабря 2010

Используйте отладчик и убедитесь, что селектор перед ".remove ();" на самом деле что-то находит. Скорее всего, это неверно. (Почему у него в конце стоит «[]»?)

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