利用jQuery判断某值,移除特定的html元素

当时我在做一个地产相关的网站项目,主要使用K2组件,还有一个K2搜索的模块。

Demo页面:http://ecs.ycway.cn/office-rent/itemlist/filter.html?searchword1=%E6%B5%B7%E6%B7%80&moduleId=41&Itemid=7

K2搜索模块需要定制,目标是实现点击一个区域,然后显示下级区域。

正常来说这是一个选择联动的功能,由于当时版本的K2搜索模块并不支付联动功能。

所以只能换思路实现,就是把所有的二级区域作为一个单选字段。

当点击某个一级区域,用jQuery做判断,把不相关的二级区域元素移除,这样就可以只显示相关的二级区域元素。

具体的实现方式:

<script type="text/javascript">
jQuery(document).ready(function() {
var radio1 = jQuery(".k2filter-field-1 .active"); //构造函数radio1,利用选择器指定范围
var radio2 = jQuery(".k2filter-field-2"); //构造函数radio2,利用选择器指定范围
if(radio1.html() == "New York") {   //比较函数radio1指定的范围内的HTML的值
radio2.find("a:eq(3),br:eq(3), a:eq(4), br:eq(4), a:eq(5), br:eq(5), a:eq(6), br:eq(6), a:eq(7), br:eq(7), a:eq(8),  br:eq(8)").remove();//利用选择器指定范围eq()的jQuery历遍方法,找出指定排序的超链接元素a和换行符br,将其符条件的html元素移除
}
if(radio1.html() == "Paris") {
radio2.find("a:eq(0), br:eq(0), a:eq(1), br:eq(1), a:eq(2), br:eq(2), a:eq(6), br:eq(6), a:eq(7), br:eq(7), a:eq(8), br:eq(8)").remove();
}
if(radio1.html() == "Hong Kong") {
radio2.find("a").slice(0,6).remove();//利用选择器指定范围slice()的jQuery历遍方法,找出指定排序的超链接元素a将其符条件的html元素移除
radio2.find("br").slice(0,6).remove();
}
});
</script>