基本上,我要做的是在 selectable() UI 停止运行时更新包含在所选元素中的隐藏输入字段的 value 属性。
如果选择了元素,那么输入的值应该是特定 LI 的名称属性,而如果没有选择元素,则值应该更新为空。
HTML 示例:
<ul id="selector">
<li class="networkicon shr-digg" name="shr-digg">
<div></div>
<label>Digg</label>
<input type="hidden" value="" name="bookmark[]" />
</li>
<li class="networkicon shr-reddit" name="shr-reddit">
<div></div>
<label>Reddit</label>
<input type="hidden" value="" name="bookmark[]" />
</li>
<li class="networkicon shr-newsvine" name="shr-newsvine">
<div></div>
<label>Newsvine</label>
<input type="hidden" value="" name="bookmark[]" />
</li>
</ul>
脚本示例:
$(function() {
$("#selector").selectable({
filter: 'li',
selected: function(event, ui) {
$(".ui-selected").each(function() {
$(this).children('input').val($(this).attr('name'));
});
},
unselected: function(event, ui) {
$(".ui-selected").each(function() {
$(this).children('input').val('');
});
}
});
});