【问题标题】:jquery select element by name attributejquery按名称属性选择元素
【发布时间】:2011-06-08 20:13:31
【问题描述】:

我有一个带有 name 属性的输入:

<input type="text" name="data[foo][bar]" />

如何选择这个元素?

我尝试了$("input[name=data[foo][bar]]"),但还是坚持了下来。

【问题讨论】:

    标签: javascript jquery jquery-selectors


    【解决方案1】:

    为属性值添加引号,否则会出现方括号冲突和解析错误:

    $("input[name='data[foo][bar]']")
    

    【讨论】:

    • 是的,那些引号实际上是mandatory
    【解决方案2】:
    $("input[name='data[foo][bar]']") 
    

    【讨论】:

      【解决方案3】:
      $('input[name="data[foo][bar]"]')
      

      http://api.jquery.com/attribute-equals-selector/ 了解更多信息

      【讨论】:

        【解决方案4】:

        使用

        $("input[name=data\\[foo\\]\\[bar\\]]")
        

        文档说:

        如果您希望使用任何元字符(例如 !"#$%&'()*+,./:;?@[]^`{|}~ )作为文字作为名称的一部分,您必须使用两个反斜杠转义字符:\。例如,如果您有一个 id="foo.bar" 的元素,则可以使用选择器 $("#foo\.bar")。

        http://api.jquery.com/category/selectors/

        【讨论】:

          猜你喜欢
          • 2017-01-16
          • 1970-01-01
          • 2016-04-06
          • 1970-01-01
          • 1970-01-01
          • 2011-03-18
          • 2016-11-30
          • 2010-11-09
          相关资源
          最近更新 更多