Я использую плагин jQuery UI sortables для переупорядочения некоторых элементов списка. Внутри каждого элемента списка у меня есть пара переключателей, которые позволяют включить или отключить элемент.
Когда элемент перетаскивается, оба переключателя отменяются, что не должно происходить. Это правильное поведение, и если нет, как лучше обойти это?
Вот пример кода, демонстрирующий эту проблему:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>jQuery Sortables Problem</title>
<script src="jquery-1.2.6.min.js" type="text/javascript"></script>
<script src="jquery-ui.min.js" type="text/javascript"></script>
<style type="text/css">
.items
{
margin-top: 30px;
margin-left: 0px;
padding-left: 25px;
cursor: move;
}
.items li
{
padding: 10px;
font-size: 15px;
border: 1px solid #666;
background: #eee;
width: 400px;
margin-bottom: 15px;
float: left;
clear:both;
}
</style>
</head>
<body>
<ol id="itemlist" class="items">
<li id="1" class="item">
Item 1
<input name="status_1" type="radio" value="1" checked="checked" />enabled
<input name="status_1" type="radio" value="0" />disabled
</li>
<li id="2" class="item">
Item 2
<input name="status_2" type="radio" value="1" checked="checked" />enabled
<input name="status_2" type="radio" value="0" />disabled
</li>
<li id="3" class="item">
Item 3
<input name="status_3" type="radio" value="1" checked="checked" />enabled
<input name="status_3" type="radio" value="0" />disabled
</li>
<li id="4" class="item">
Item 4
<input name="status_4" type="radio" value="1" checked="checked" />enabled
<input name="status_4" type="radio" value="0" />disabled
</li>
</ol>
<script type="text/javascript">
$('#itemlist').sortable();
</script>
</body>
</html>
Как только элемент списка захвачен мышью, оба переключателя отменяются.
Если это ошибка, одним из обходных путей будет автоматический выбор переключателя «включен» при перемещении элемента, поэтому любые советы о том, как этого добиться, также будут наиболее полезны.
Обновление: я тестировал это в FireFox 3, Internet Explorer 7, Opera 9.5 и Safari 3.1.2, все в Windows XP x64, и эта проблема возникает во всех из них.