基本思路:
上移:(1)获取当前选中的元素的索引值
(2)判断当前元素是否为第一个元素
(3)如果是,则不执行上移操作,如果不是,则则调用insertBefore方法插入到他的prev(紧邻的上一个)元素之前
1 var up = function () { 2 var selectedIndex = $("#SelectedAddressIds option:selected").index(); //获取当前选中元素的索引 3 if(selectedIndex >= 1){ 4 // 插入上一个 5 $("#SelectedAddressIds option:selected").insertBefore($("#SelectedAddressIds option:selected").prev('option')); 6 } 7 }
下移:(1)获取所有option元素的索引值
(2)获取当前选中元素的索引值
(3)判断当前选中元素是否为最后一个元素,如果是,则不执行下移,如果不是则调用insertAfter方法插入到他的next(紧邻的下一个)元素的后面。
1 var down = function () { 2 // 获取最后一个option的索引值 3 var optionNum = $("#SelectedAddressIds option").size() - 1; 4 // 获取当前选中元素的索引值 5 var selectedIndex = $("#SelectedAddressIds option:selected").index(); 6 7 if(selectedIndex < 6){ 8 // 插入下一个 9 $("#SelectedAddressIds option:selected").insertAfter($("#SelectedAddressIds option:selected").next('option')); 10 } 11 }