0

JavaScript を使用して生成された動的な html テーブルがあります。テーブルには、カスタム属性を持つテキスト ボックス、ドロップダウン ボックスなどのさまざまなコントロールが含まれています。このテーブル内にあるすべてのコントロールをループして、カスタム属性が何らかの値に一致するコントロールを見つけるにはどうすればよいですか?

4

4 に答える 4

2

:inputこれにより、テーブル(セレクター)内のすべてのフォーム要素が得られます。

var $formElements = $('#tableid').find(':input');

属性セレクターでフィルタリングできます:

//will select every form element having a data-custom attribute set to 5
var $formElements = $('#tableid').find(':input[data-custom="5"]');

jsFiddleデモをご覧ください。私の例では、 HTML5データ属性を使用しましたが、コードは必要な任意の属性で機能します。

または、このfilter()メソッドを使用して、要素をフィルタリングする関数を作成できます。

var $formElements = $('#tableid').find(':input').filter(function () {
    return $(this).attr('data-custom') == '5';
});

filter()を使用したjsFiddleデモ

于 2012-02-24T09:06:05.473 に答える
1

デモ: http://jsfiddle.net/DSqZr/1/

function getControl(_value){
    $("#panel :input").each(function(){
        if($(this).attr("custom") == _value){
           return  $(this);
        }
    })​
}

var selectedCrl = getControl(1);
于 2012-02-24T09:36:34.160 に答える
0

AttributecontainsSelectorを使用できます。

例を確認してください。おそらく、特定の属性値を持つ要素を検索する必要があるものに非常に近いものですinputselect

于 2012-02-24T09:06:48.687 に答える
0

彼らにクラスを与えて.control

$('.control[attribute=value]')

属性セレクターの詳細については、セレクターAPIを確認してください。

于 2012-02-24T09:06:53.080 に答える