JQuery изменение динамического имени элемента не работает в IE7 - PullRequest
0 голосов
/ 01 сентября 2011

У меня есть код, который клонирует элемент HTML Select. Клонирование работает отлично.

Клонированные элементы будут иметь идентификатор = {original_element_id} -1

После того, как элемент клонирован, в IE7 я не могу выбрать элемент. Например:

Оригинальный элемент:

<select name="13">
    <option>Value 1
    <option>Value 2
</select>

Клонированный элемент:

<select name="13-1">
    <option>Value 1
    <option>Value 2
</select>

Я пытаюсь это:

$("[name='13-1']").live('click',function() {
    alert(1);
});

Это работает в Chrome, но в IE7 это не работает.

Как выбрать динамически созданный элемент в IE7?

Я использую Jquery 1.4.2, я пробовал 1.4.3, 1.4.1, 1.4.0, 1.6.2

Ответы [ 2 ]

2 голосов
/ 01 сентября 2011

Я протестировал свою версию IE7 и работает нормально, измените ваш скрипт на следующий:

$(function() {
    $("select[name='13-1']").live('click', function() {
        alert(1);
    });
});

Ссылка: http://jsfiddle.net/LE9Ed/

UPDATE

Динамический HTML: http://jsfiddle.net/LE9Ed/1/

1 голос
/ 01 сентября 2011
$orig = $('select');

$orig.clone().attr('name', '13-1').appendTo('body');

$("[name='13-1']").live('click',function() {
    alert(1);
});
  1. Вот рабочий пример: http://jsfiddle.net/B5m6F/5/
  2. Также отсутствует скобка, где вы используете атрибут имени
...