Переход с jQuery 1.4.4 на jquery 1.6.4 начал нарушать мой код, связанный с radiobuttonlist.
Вот пример кода и шаги для воспроизведения странного поведения:
Шаги для воспроизведения:
1: Радио A уже выбрано.
2: Выберите радио B
3: Введите что-нибудь в текстовое поле и выведите.
Вы увидите: A проверен, а B проверен оповещениями.
Так что именно изменилось с 1.6.4 до 1.4.4, что вызывает его поломку?
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
<script src="http://ajax.microsoft.com/ajax/jquery/jquery-1.6.4.min.js" type="text/javascript"></script>
<script type="text/javascript">
function txtchanged(tb) {
$(".rbl").find("input[type='radio']").each(function () {
alert($(this).val() + " " + $(this).attr("checked"));
});
}
</script>
</head>
<body>
<form id="form1" runat="server">
<asp:RadioButtonList ID="RadioButtonList1" runat="server" CssClass="rbl">
<asp:ListItem Text="A" Value="A" Selected="True" />
<asp:ListItem Text="B" Value="B" />
</asp:RadioButtonList>
<asp:TextBox ID="tb" runat="server" CssClass="tb" onblur="txtchanged(this)"></asp:TextBox>
</form>
</body>
</html>