jQuery Radiobox Clone - PullRequest
       5

jQuery Radiobox Clone

0 голосов
/ 27 августа 2011

Я застрял, пытаясь клонировать набор радиополя с помощью jQuery Mobile framework.Я бы обычно использовал событие .live или клон (true)

$(".cloneButton").live('click', function() {

    $('#fieldSet1').clone().insertBefore('.cloneButton');

});

Однако в этом случае это не работает.Клонированные переключатели все еще управляют оригиналом.

Если кто-то знаком с jQuery Mobile, я был бы признателен за вашу помощь.

См. Этот пример - http://jsfiddle.net/R65cn/

Я взялПример радиосигнала от http://jquerymobile.com/demos/1.0b2/#/demos/1.0b2/docs/forms/radiobuttons/index.html

Спасибо,

Крис

1 Ответ

0 голосов
/ 29 августа 2011

Это не имеет ничего общего с мобильным Jquery, но с основными правилами HTML / Javascript.

Поскольку вы клонируете элементы с помощью .clone (), все уникальные идентификаторы на переключателях (и других элементах) также клонируются, что приводит к дублированию идентификаторов. Браузеры будут использовать только первый объявленный идентификатор, который они найдут, и это объясняет поведение в вашем примере.

Когда вы нажимаете вторую или третью комбинацию переключателей, браузер ищет элемент с идентификатором «radio-choice-1» и останавливается после первого нажатия (переключатель с идентификатором «radio-choice-1» при первой комбинации переключателей).

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

...