Валидатор инструментов jQuery влияет на поведение `event.target` - PullRequest
0 голосов
/ 12 мая 2011

В следующем коде используются инструменты jQuery 1.4.4 и jQuery 1.2.5.
При радио-щелчке , он оценивает $(event.target).attr('id') как «неопределенный» в IE 8. Возможно, в других версияхIE тоже.Он работает, как и ожидалось, в большинстве других браузеров.

При комментировании экземпляра $('form').validator() код работает, как и ожидалось, даже в IE.

Пожалуйста, сообщите.

<!DOCTYPE html>
<html>
<head>
    <title>jquery tools validator and IE issue on event.target</title>
    <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.4/jquery.min.js"></script>
    <script src="http://cdn.jquerytools.org/1.2.5/full/jquery.tools.min.js?foo"></script>
    <script>
    $(document).ready(function(){
        $('form').validator();
        $('[type=radio]').click(function(event){
            alert($(event.target).attr('id'));
        });
    });
    </script>
</head>
<body>
    <form>
        <input type="radio" name="aee-ee-eight" id="id-0" value="0" checked="checked" tabindex="0">
        <input type="radio" name="aee-ee-eight" id="id-1" value="0" tabindex="1">
        <input type="radio" name="aee-ee-eight" id="id-2" value="0" tabindex="2">
        <input type="submit"><br/>
</form>
</body>
</html>

1 Ответ

0 голосов
/ 12 мая 2011

Я думаю, что ваша проблема с event.target, попробуйте использовать это вместо этого, чтобы подобрать целевое значение.

Я бы изменил вашу функцию на:

$(document).ready(function(){
        $('form').validator();
        $('[type=radio]').click(function(){
            alert($(this).attr('id'));
        });
    });
...