代码之家  ›  专栏  ›  技术社区  ›  zadam

jQuery匹配多个属性

  •  45
  • zadam  · 技术社区  · 17 年前

    All 单选按钮已选中。

    <ul>
        <li><input type="radio" value="All" name="Foo"/>All</li>
        <li><input type="radio" value="New" name="Foo"/>New</li>
        <li><input type="radio" value="Removed" name="Foo"/>Removed</li>
        <li><input type="radio" value="Updated" name="Foo"/>Updated</li>
    </ul>
    

    @name='Foo' @value='All'

    大概是这样的:

    $("input[@name='Foo' @value='all']").attr('checked','checked');
    

    有人能告诉我怎么做吗?

    2 回复  |  直到 9 年前
        1
  •  69
  •   paxdiablo    17 年前

    以下HTML文件显示了如何执行此操作:

    <html>
      <head>
        <script type="text/javascript" src="jquery-1.2.6.pack.js"></script>
        <script type="text/javascript">
          $(document).ready(function(){
            $("a").click(function(event){
              $("input[name='Foo'][value='All']").attr('checked','checked');
              event.preventDefault();
            });
          });
        </script>
      </head>
      <body>
        <ul>
          <li><input type="radio"  value="All"  name="Foo"  />All</li>
          <li><input type="radio"  value="New"  name="Foo"  />New</li>
          <li><input type="radio"  value="Removed"  name="Foo"  />Removed</li>
          <li><input type="radio"  value="Updated"  name="Foo"  />Updated</li>
        </ul>
        <a href="" >Click here</a>
      </body>
    </html>
    

    checked 属性

        2
  •  13
  •   StuartLC    14 年前

    我的头撞到了类似的墙上,我只想指出,在jQuery1.3中,接受答案中使用的语法是唯一有效的语法。提问者对表达式使用@语法,这在jQuery中根本不起作用。希望这能帮助下一个家伙通过Google=p遇到这个问题

    为了清楚起见,您必须使用

    jQuery('input[name=field1][val=checked]') 
    

    而不是

    jQuery('input[@name=field1][@val=checked]')