检查单击的按钮是否具有在jQuery中以特定字符串开头的ID
Check if button clicked has ID that starts with a particular String in jQuery
我正在使用Twitter Bootstrap,并有以下代码
<div class="btn-group">
<a id="id_btn_dropdown_policies" class="btn dropdown-toggle" data-toggle="dropdown" href="#">
--Select-- </a>
<ul class="dropdown-menu">
<li><a href="#" id="id_btn_dropdown_policy_policy1">policy1</a></li>
<li><a href="#" id="id_btn_dropdown_policy_policy2">policy2</a></li>
<li><a href="#" id="id_btn_dropdown_policy_policy3">policy3</a></li>
<li><a href="#" id="id_btn_dropdown_policy_policy4">policy4</a></li>
</ul>
</div>
我的功能是
$(function() {
$(".dropdown-menu li a").click(function() {
//check if button clicked is of id that starts with id_btn_dropdown_policy
$("#id_btn_dropdown_policies").text($(this).text());
$("#id_btn_dropdown_policies").val($(this).text());
getCategory($(this));
});
});
仅当this.id.indexof("id_btn_dropdown_policies")=0
时,我希望设置id为id_btn_dropdown_policys的元素的文本和值
我在jQuery中无法做到这一点,因为看起来没有indexof方法。我试过
if($(this).attr('id').indexof("id_btn_dropdown_policy") == 0) {
alert("Matched");
};
这是不正确的。那么正确的方法是什么呢?
实际上没有indexof
方法,您要查找的是indexOf
(大写'O'(。
参见MDN
您可以尝试以下处理程序(仅为id以id_btn_dropdown_policy
开头的a
标记注册处理程序(:
$(".dropdown-menu li a[id^='id_btn_dropdown_policy']").click(function() {
// code goes here
});
在这种情况下,a[id^='id_btn_dropdown_policy']
意味着,其id
以id_btn_dropdown_policy
开头的所有标签。因此,点击其他a
标签不会采取任何行动。
$(".dropdown-menu li a[id^='id_btn_dropdown_policy']")
是一个糟糕的选择器,您应该使用javascript的indexOf
方法。
即
if($(this).attr('id').indexOf("id_btn_dropdown_policy") == 0) {
alert("Matched");
};
我的建议是对那些div使用use common class
,然后通过classs选择器进行选择。
我不确定我是否理解您的问题,但您可以使用jQuery中的"attribute starts with"选择器进行选择。
$(function () {
$(".dropdown-menu li a").click(function () {
//check if button clicked is of id that starts with id_btn_dropdown_policy
$( "[id^='id_btn_dropdown_policies']" ).text($(this).text());
$( "[id^='id_btn_dropdown_policies']" ).val($(this).text());
getCategory($(this));
});
});
相关文章:
- 对id以某个字符串开头的元素进行计数
- 如果元素's的ID以数字开头
- 在jquery中选择id以字符串开头的元素
- 如何使用“属性以选择器开头”中的 ID 变量来选择 jQuery 中的元素
- 如果 ID 以前缀开头,则 JQuery 替换 html 元素内容
- JQuery:查找以任何一个指定字符串开头的所有 ID
- 如何在 JavaScript 中对以 # 开头的 ID 创建 OnClick 事件
- 选择具有以某个字符串开头的 ID 选择器的下拉列表
- 所有id以自定义文本开头的按钮上的JQuery单击事件
- 检索列表`<li>`具有Jquery Selector:ID的标记以某种格式开头
- 输入id以一个可变字符串开头
- 如何在“;parentNode”;其id以相同字符串开头
- 在香草JS中为所有人重写href 以特定ID开头的对象
- 对于以整数开头的id,无法识别的表达式出现错误
- 如何访问所有<灯光>id's以相同名字开头的人
- 如何使用JQuery来处理链接上的点击,该链接的id以特定字符串开头
- 如果Dgrid的id以数字开头,则Dgrid列调整大小,隐藏,重新排序属性会产生错误
- 检查单击的按钮是否具有在jQuery中以特定字符串开头的ID
- id的jQuery选择器以特定文本开头
- 如何获取以单词开头的跨度 ID