1

チェックされた入力の正規表現に一致するクラスの名前を取得しようとしています。

私がこれを持っている場合:

 <input type="radio" class="toggle toggle-1" />
 <input type="radio" class="toggle toggle-2" checked="checked" />
 <input type="radio" class="toggle toggle-3" />

「toggle-2」がチェックされたクラスであることを知りたいです。

 $('.toggle:checked').className.match(/toggle\-.+?\b/);

しかし、それは「className is undefined」エラーを生成しました。

私の問題は、jQuery オブジェクトに対して className を使用していることだと思います。しかし、代替手段が何であるかはよくわかりません。

4

4 に答える 4

9

attr メソッドを呼び出して、必要な要素の基になる属性を取得できます。

$('.toggle:checked').attr('class').match(/toggle\-.+?\b/); 
于 2009-12-17T23:20:58.463 に答える
6

classNameは標準のDOMメンバーであり、jQueryラッパープロパティではありません。アクセス$('something')[0].classNameまたはjQuery$('something').attr('class')のいずれかですが、それらを混在させることはできません。

radio共有されていない複数のがありnameますか?それは機能しません、それらはすべて別々にチェック可能なフィールドとして機能します。radio一緒に属するすべてのコントロールは、同じname(ただし異なるvalue)を持ち、同じフォーム内に配置する必要があります。

于 2009-12-18T00:49:15.183 に答える
0

jQuery が参照するすべてのアイテムに Id は必要ありませんか?

于 2009-12-17T23:20:49.540 に答える
0
$('.toggle:checked').hasClass('toggle-2');
于 2009-12-17T23:31:04.160 に答える