2010-12-14 16 views

答えて

6

はあなたのif()テストは常にtrueを評価します。 if()lengthプロパティを使用する必要があります。あなたはjQueryオブジェクトの代わりにnodeListを得るために望んでいた場合は

var uform = $('#umi-form'); 
if(uform.length) { 
    var inputs = uform.find('input'); 
} 

、次の操作を行います。

var uform = $('#umi-form'); 
if(uform[0]) { 
    var inputs = uform[0].getElementsByTagName('input'); 
} 
11

それはこのように行うことができます。

var $inputs = $('#umi-form input'); 
1

JavaScriptの最初の...

document.getElementsByTagName('input'); 

は、内のすべてのinput秒を取得しますdocument"ページ")。

ながら
document.getElementById('umi-form').getElementsByTagName('input'); 

#umi-form内のすべてのinput秒を取得します。

この場合、getElementsByTagNameの呼び出しは、期間の前にの要素にあります。 documentで呼び出すと、ページの名前付きタグを持つすべての要素が取得されます。 の要素をdocumentという名前で呼び出すと、その子の中から指定されたタグを持つ要素だけが取得されます。

要素の中にある指定されたタグを持つすべての要素を取得します。あなたは、それらの一つだけで取得使用したいしかし、もしjQueryのですのでindex

target_element.getElementsByTagName('tag-name').length; 

で得られる返さlengthの範囲内整数ある

target_element.getElementsByTagName('tag-name')[ index ]; 

JavaScriptライブラリーでは、jQuery IMOを使用する前にJSの理解を深めることをお勧めします。

関連する問題