JavaScript如何从listbox里同时删除多个项目
作者:
要从列表框同时删除多个项目只能从下向上删除,这样就不会出现索引号乱变的问题了,下面有个不错的示例,大家可以感受下
要从列表框同时删除多个项目,我们不能从上到下的删除,因为上面的项目每删除一个,下面的项目的索引号就会变化,所以只能从下向上删除,这样就不会出现索引号乱变的问题了。
html代码
<table>
<tr>
<td align="center">
<select id="lsbox" name="lsbox" size="10" multiple>
<option value="1">India</option>
<option value="2">United States</option>
<option value="3">China</option>
<option value="4">Italy</option>
<option value="5">Germany</option>
<option value="6">Canada</option>
<option value="7">France</option>
<option value="8">United Kingdom</option>
</select>
</td>
</tr>
<tr>
<td align="center">
<button onclick="listbox_remove('lsbox');">Delete</button>
<button onclick="window.location.reload();">Reset</button>
</td>
</tr>
</table>
javascript代码如下:
function listbox_remove(sourceID) {
//get the listbox object from id.
var src = document.getElementById(sourceID);
//iterate through each option of the listbox
for(var count= src.options.length-1; count >= 0; count--) {
//if the option is selected, delete the option
if(src.options[count].selected == true) {
try {
src.remove(count, null);
} catch(error) {
src.remove(count);
}
}
}
}
当然,如果使用jQuery来删除,那就方便了,一句话就搞定了
$("#sourceId").find('option:selected').remove();
html代码
复制代码 代码如下:
<table>
<tr>
<td align="center">
<select id="lsbox" name="lsbox" size="10" multiple>
<option value="1">India</option>
<option value="2">United States</option>
<option value="3">China</option>
<option value="4">Italy</option>
<option value="5">Germany</option>
<option value="6">Canada</option>
<option value="7">France</option>
<option value="8">United Kingdom</option>
</select>
</td>
</tr>
<tr>
<td align="center">
<button onclick="listbox_remove('lsbox');">Delete</button>
<button onclick="window.location.reload();">Reset</button>
</td>
</tr>
</table>
javascript代码如下:
复制代码 代码如下:
function listbox_remove(sourceID) {
//get the listbox object from id.
var src = document.getElementById(sourceID);
//iterate through each option of the listbox
for(var count= src.options.length-1; count >= 0; count--) {
//if the option is selected, delete the option
if(src.options[count].selected == true) {
try {
src.remove(count, null);
} catch(error) {
src.remove(count);
}
}
}
}
当然,如果使用jQuery来删除,那就方便了,一句话就搞定了
复制代码 代码如下:
$("#sourceId").find('option:selected').remove();
您可能感兴趣的文章:
- JS ListBox的简单功能实现代码
- js 获取Listbox选择的值的代码
- javascript实现listbox左右移动实现代码
- 使用javascript实现ListBox左右全选,单选,多选,全请
- 用JavaScript实现类似于ListBox功能示例代码
- JavaScript控制两个列表框listbox左右交换数据的方法
- 轻松使用jQuery双向select控件Bootstrap Dual Listbox
- jquery控制listbox中项的移动并排序
- 基于JQUERY的两个ListBox子项互相调整的实现代码
- jquery控制listbox中项的移动并排序的实现代码
- jquery移动listbox的值原理及代码
- JS与jQuery实现ListBox上移,下移,左移,右移操作功能示例