在具有相同类的单个页面上,在jquery中创建多个next和previous按钮
create multiple next and previous button in jquery on single page with same class
我是JavaScript和Jquery的新手,在创建带有next和previous选项的多个下拉列表的代码时遇到了问题,但我不想为next和previor编写两次相同的代码。我只是想动态地使用相同的代码。我试过了,但没有得到任何答复。Plzz建议。。。。
<div class="filter-category">
<div class="floor-dropdown">
<span class="prev">Prev</span>
<select class="roof-filter">
<option value="1" selected>All types</option>
<option value="2">Type1</option>
<option value="3">Type 2</option>
</select>
<span class="next">Next</span>
</div>
<div class="floor-dropdown">
<span class="prev">Prev</span>
<select class="roof-filter">
<option>011</option>
<option>222</option>
<option>333</option>
<option>444</option>
</select>
<span class="next">Next</span>
</div>
</div>
jQuery(".roof-prev").click(function () {
jQuery('.roof-filter option:selected').prev().attr('selected', 'selected');
});
jQuery(".roof-next").click(function () {
jQuery('.roof-filter option:selected').next().attr('selected', 'selected');
});
请不要为第二个代码使用不同的类名编写此代码,我想在不重新编写的情况下使用此代码。
提前谢谢。
您可以使用this
作为对所单击元素的引用。从中,您可以通过查找最接近的公共父级来查找与其相关的select
。试试这个:
jQuery(function($) {
$(".prev").click(function () {
$(this).closest('.floor-dropdown').find('option:selected').prev().attr('selected', 'selected');
});
$(".next").click(function () {
$(this).closest('.floor-dropdown').find('option:selected').next().attr('selected', 'selected');
});
});
小提琴示例
相关文章:
- 创建一个类似链接的按钮,并通过Javascript函数打开一个新的弹出窗口
- 为effect Composer创建GodRays效果过程
- 从javascript创建一个列表
- onkeyup无法动态创建多个文本区域
- 如何使用javascript从主svg对象动态创建svg视图框
- 如何访问声音管理器2创建的声音对象
- 我已经创建了一个jquery转盘,并使用if条件来运行和停止转盘
- Kendo:我该如何在树视图中创建一个递归的hieiarchy
- 使用Facebook live API创建实时视频对象时的隐私设置
- 在动态创建的元素上获取对特定选择器的引用
- 如何创建带有插槽的vue js组件预加载程序
- 如何在创建键时引用来自同一对象的键
- 如何创建JSON数组
- Jquery:为新数据创建寻呼机(next-prev按钮)
- 在具有相同类的单个页面上,在jquery中创建多个next和previous按钮
- carouFredSel:为next/prev按钮创建一个函数
- 使用array (JavaScript)创建一个简单的next / previous链接
- 表达,Nodejs:如何调用'next()'只有在创建了模式之后
- jQuery .next().not()不能查找动态创建的元素
- 在jQuery中使用next和previous按钮创建图像库