为了账号安全,请及时绑定邮箱和手机立即绑定

如何选择具有相同类名的按钮?

如何选择具有相同类名的按钮?

波斯汪 2023-05-11 13:58:12
如何选择具有相同类名的按钮。我在下拉菜单btn btn-link dropdown-toggle中有一个 class 的下拉菜单,我有一个带有 class 的按钮btn btn-link。我试图在下拉菜单中获取内部按钮,但它选择了 dropdoen 菜单本身。<div class="dropdown overflow show">    <button class="btn btn-link dropdown-toggle" type="button" data-toggle="dropdown"        aria-expanded="true">Actions<span class="caret"></span></button>    <div class="dropdown-menu dropdown-menu-right show" s x-placement="bottom-end">        <div><button type="button" class="btn btn-link">Standard Letter</button></div>        <div></div>    </div></div>我尝试使用以下 jQuery 代码获取内部 btn 类并触发以下 jQuery 但它选择了btn btn-link dropdown-toggle 而不是下拉项<button type="button" class="btn btn-link" onkeydown="setTypeStandardLetterChange()" onclick="setTypeStandardLetterChange()">Standard Letter</button>/div>$(document).on("click", ".btn.btn-link", function (e) {    var grid = $("#BillingLettersGrid").data("kendoGrid"); grid.refresh();    var dataItem = grid.dataSource.getByUid($(this).closest("tr").data("uid"));    dataItem.FileName = "Standard Letter ";})
查看完整描述

3 回答

?
达令说

TA贡献1821条经验 获得超6个赞

尝试在父 div 类中添加特殊性.dropdown-menu


$(document).on("click", ".dropdown-menu .btn.btn-link", function (e) {

var grid = $("#BillingLettersGrid").data("kendoGrid"); grid.refresh();

var dataItem = grid.dataSource.getByUid($(this).closest("tr").data("uid"));

dataItem.FileName = "Standard Letter "; })

看起来第二个按钮关闭不正确后的div,应该关闭下面打开的div。


查看完整回答
反对 回复 2023-05-11
?
慕妹3242003

TA贡献1824条经验 获得超6个赞

为了简化事情并避免取消查询中的第一个按钮的资格,为什么不给要查询的按钮一个 ID?ID 必须是唯一的,因此:

<button type="button" id="standard-letter" class="btn btn-link">Standard Letter</button>

在你的脚本中,$("#standard-letter").click()等等。


查看完整回答
反对 回复 2023-05-11
?
临摹微笑

TA贡献1982条经验 获得超2个赞

只需用作.btn.btn-link:not(.dropdown-toggle)选择器。


我已经用您的 HTML 尝试了以下代码,它有效


$(document).on("click", ".btn.btn-link:not(.dropdown-toggle)", function (e) {

/*

    var grid = $("#BillingLettersGrid").data("kendoGrid"); grid.refresh();

    var dataItem = grid.dataSource.getByUid($(this).closest("tr").data("uid"));

    dataItem.FileName = "Standard Letter ";

    */

    console.log(this);

})

<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>

<div class="dropdown overflow show">

    <button class="btn btn-link dropdown-toggle" type="button" data-toggle="dropdown"

        aria-expanded="true">Actions<span class="caret"></span></button>

    <div class="dropdown-menu dropdown-menu-right show" s x-placement="bottom-end">

        <div><button type="button" class="btn btn-link">Standard Letter</button></div>

        <div></div>

    </div>

</div>


查看完整回答
反对 回复 2023-05-11
  • 3 回答
  • 0 关注
  • 140 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信