2012-04-25 66 views
1

是否有任何優雅的方式來按名稱獲取元素類型?如何按名稱獲取元素類型?

我可以預期呈現的表單包含下拉菜單,輸入,表格,名稱爲「answer [x]」的div,其中x代表某個數字。 我需要元素類型來知道如何處理它。 我可以嘗試獲得對象:

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

$('input[name=answer\\[x\\]]').length > 0然後「大其輸入!」。 它只是看起來並不像優雅的方式......

+1

是該元素的名稱'回答[1'? – gdoron 2012-04-25 07:42:16

+0

不,它是我的錯誤.., 其**名=「答案[1] ** – dllhell 2012-04-25 08:20:06

回答

2

對我來說$("[name='answer[" + x + "]'")[0].tagName也相當考究:)

+0

謝謝親愛的先生們,我感到慚愧:) – dllhell 2012-04-25 08:33:09

+0

祝你好運與嘗試;) – VisioN 2012-04-25 08:34:29

1

用這個一個元素

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

或者這對於多個元素

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

Live DEMO

1
$tags = $('[name^=answer]'); // all element have name started with answer 

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

Check it live