【问题标题】:jQuery selector for matching at start AND end of ID?用于在 ID 的开头和结尾匹配的 jQuery 选择器?
【发布时间】:2009-07-17 11:11:08
【问题描述】:

我的网页上有一组按钮,它们都有一个以文本“EditMode”结尾的 id。

我正在使用 jQuery 来分配一个事件来喜欢这样

$('[id $=EditMode]').click(editHandler);

但是现在我想在 id 前面加上一个名称(我会提前知道),所以 id 将是“aName+someotherstuff+EditMode”。如何更改上述表达式,以便将 aName 与 editMode 匹配?

【问题讨论】:

    标签: jquery


    【解决方案1】:
    $('[id ^=aName][id $=EditMode]')
    

    【讨论】:

    • 我总是会在你的选择器名称周围添加引号,就像这样$('[id ^="aName"][id $="EditMode"]') 请参阅小提琴以获取工作示例jsfiddle.net/u6mzs720
    • 这非常适合通过 javascript 填充 ASP BeginCollection 元素。
    【解决方案2】:

    或者,您可以使用“add()”函数来提高可读性,但我会推荐 Chaos 的方法:

    $("[id ^=aName]").add("[id $=EditMode]")
    

    【讨论】:

    • 其实这个答案并没有达到和混沌答案一样的效果。这将选择所有 id 以“aName”开头且所有 id 以“EditMode”结尾的元素。 Chaos 的答案将选择在每个 id 中都以“aName”开头和“EditMode”结尾的所有元素。在意识到我的错误之前,我使用了这个“可读性”,因为我正在选择输入字段并且方括号有点令人困惑。如果它可以帮助任何其他人,如:$("input[name^='start_term']input[name$='[end_term]']")
    猜你喜欢
    • 1970-01-01
    • 2013-11-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-07-26
    • 1970-01-01
    相关资源
    最近更新 更多