不能阻止列表分隔符被视为列表项
Can't stop list dividers being treated as list items
$(document).on("click", "li", function() {alert("A list item was clicked");}
我使用上面的代码对每个列表项执行操作,但列表分隔符也处理此事件。
我使用
排除了我的关闭按钮$(document).on("click", "li", function() {
if (this.id !== "closeButton") {
alert("A list item was clicked");
}
});
但是我不能阻止它出现在列表分隔符上。我已经尽力了,但无济于事
$(document).on("click", "li", function() {
if (this.class !== "ui-li-divider") {
alert("A list item was clicked");
}
});
下面是解决问题的JSFiddle: http://jsfiddle.net/2g3w5/
修改选择器为li:not([data-role='list-divider'])
$(document).on("click", "li:not([data-role='list-divider'])", function() {
if (this.id !== "closeButton") {
alert("A list item was clicked");
//choosePageTypeToBuild();
}
});
OR修改选择器为li:not([data-role='list-divider'], #closeButton)
并去掉if
条件
$(document).on("click", "li:not([data-role='list-divider'], #closeButton)", function() {
alert("A list item was clicked"); //Get rid of if condition
});
另外,请确保使用特定的选择器,否则您使用的选择器将针对文档中的所有li
元素。
为wrapper元素指定一个id
,并相应地修改选择器
在不可点击项上使用标志类&将脚本更改为
这里我使用'stat'
类作为标志
$(document).on("click", "li", function() {
if(!$(this).hasClass('stat')){
alert("A list item was clicked");
}
});
因为分隔符是一个'li'元素,编辑"li" -> "a",看看会发生什么
$(document).on("click", "a", function() {
if (this.class !== "ui-li-divider") {
alert("A list item was clicked");
}
});
您也可以检查data-role
属性,并发现该项目不是list-divider
示例代码将是这样的
$(document).on("click", "li", function () {
if ($(this).attr('data-role') !== 'list-divider' && this.id !== "closeButton") {
alert("A list item was clicked");
}
});
<<h2> JSFiddle演示/h2> 在jquery中使用:not
$(document).on("click", "li:not('.ui-li-divider')", function() {
alert("A list item was clicked");
//choosePageTypeToBuild();
});
或检查hasClass
在jquery
$(document).on("click", "li", function() {
if (!$(this).hasClass("ui-li-divider")) {
alert("A list item was clicked");
}
});
相关文章:
- 要求输入在数据列表中
- 从javascript创建一个列表
- 如何使用jQuery选择下拉列表的值
- 将输入字段中的文本提交到我的数据库,同时将其添加到我的列表中
- 将jsp文件下拉列表中的选定项分配给一个java变量(比如String selection)
- Javascript按钮下拉列表
- 如何使用json将对象列表从java转换为javascript
- 区分JSON中的矩阵和列表列表
- jQuery表单添加不适用于下拉列表
- 列表中的离子字母分隔符
- 有没有办法在角度UI选择的下拉列表中的第n项之后创建分隔符
- jQuery 移动列表分隔符使用错误的色板
- 用于分隔值列表的正则表达式,其中的值可能包含分隔符
- 不能阻止列表分隔符被视为列表项
- 在自动完成列表中添加分隔符
- 添加列表项字母分隔符
- Html,插入选项列表分隔符
- 在列表分隔符前添加元素
- 从数组创建 li 数据角色=列表分隔符
- 列表分隔符角度表达式