我正在尝试从select
内的loop
中删除选项。这个想法是,当用户在预订中添加数量时,选择的数量将根据已选择的房间数量而减少,这就是它循环的原因。我在其中放了一个警告,它确实循环了正确的时间,它不会移除options
。
问题是它只是没有删除任何内容,检查variables
并且它们都是预期的。非常感谢任何帮助。
这是我目前的代码:
//example variables
var quantity = 3;
var row = 2;
for (var i = 0; i < quantity; i++) {
var el_to_remove = $('.quantity_rooms_row_'+row+' option').last();
el_to_remove.remove();
}
答案 0 :(得分:1)
var quantity = 3;
var row = 2;
for (var i = 0; i < quantity; i++) {
var el_to_remove = $('.orange'+row).last();
el_to_remove.remove();
}
<!DOCTYPE html>
<html>
<head>
<title></title>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
</head>
<body>
<select>
<option value="orange1" class="orange1">Orange 1</option>
<option value="orange2" class="orange2">Orange 2</option>
<option value="orange3" class="orange3">Orange 3</option>
<option value="orange4" class="orange4">Orange 4</option>
</select>
</html>
答案 1 :(得分:0)
给我你的plunker或小提琴我会纠正否则你可以看到数组方法有javascript中的方法,您可以通过它删除数组中的元素,如拼接和弹出
1.splice - :
添加/删除数组中的元素
语法:array.splice(index,howmany,item1,.....,itemX).
2.pop - : 删除数组的最后一个元素,并返回该元素。
语法:yourArray.pop();