1

名前で要素タイプを取得するエレガントな方法はありますか?

レンダリングされたフォームには、ドロップダウン、入力、テーブル、「answer [x]」のような名前のdivが含まれていると予想できます。ここで、xはいくつかの数値を表します。それを処理する方法を知るために要素タイプが必要です。私はオブジェクトを取得しようとすることができます:

$('td[name=answer\\[1\\]]') 
$('div[name=answer\\[1\\]]')
$('input[name=answer\\[1\\]]')

そしていつ$('input[name=answer\\[x\\]]').length > 0「素晴らしい!その入力!」。それはエレガントな方法のようには見えません...

4

3 に答える 3

2

私にとって$("[name='answer[" + x + "]'")[0].tagNameはとてもエレガントです:)

于 2012-04-25T07:36:51.613 に答える
1

これを1つの要素に使用します:

$('[name=answer[1]')[0].tagName 

またはこれは複数の要素の場合:

$('[name=answer]').each(function() {
    alert(this.tagName);
});​

ライブデモ

于 2012-04-25T07:37:10.550 に答える
1
$tags = $('[name^=answer]'); // all element have name started with answer

$.each($tags, function() {
  console.log(this.tagName);
});

ライブでチェック

于 2012-04-25T07:41:33.577 に答える