Frage

Ich habe das folgende Markup und möchte das machen All Optionsknopf überprüft.

<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>

Ich möchte über Attribut übereinstimmen, aber ich muss mit zwei Attributen übereinstimmen, @name='Foo' und @value='All'.

Etwas wie das:

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

Kann jemand zeigen, wie das getan werden kann?

War es hilfreich?

Lösung

Die folgende HTML -Datei zeigt, wie Sie dies tun können:

<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>

Wenn Sie auf den Link klicken, wird das gewünschte Optionsfeld ausgewählt. Die wichtige Zeile ist diejenige, die die festlegt checked Attribut.

Andere Tipps

Ich habe meinen Kopf gegen eine ähnliche Wand geschlagen und möchte nur darauf hinweisen, dass in JQuery 1.3 die in der akzeptierte Antwort verwendete Syntax die einzige Syntax ist, die funktioniert. Der Fragesteller verwendet die @ syntax für den Ausdruck, der in jQuery überhaupt nicht funktioniert. Hoffentlich hilft dies dem nächsten Mann, diese Frage über Google = P zu stoßen

Um klar zu sein, müssen Sie verwenden

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

und nicht

jQuery('input[@name=field1][@val=checked]')
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top