2016-08-04 5 views
3

私のプロジェクトではWikipedia APIを使用しています。私はオブジェクトの中をループして、そのような記事とその説明を表示します。未定義の文字列を含むリスト項目を非表示にする

enter image description here

適切(記事)ディスプレイのほとんどは、そのうちのいくつかは、未定義を示しました。その

enter image description here

好きなものを私が欲しいのは未定義を表示 Sを非表示にすることです。私はコードを書いた

// Check if some articles are undefined if so hide them 
if (articleAuthor === "undefined") { 
    $('.articleItem').html(''); 
} 

しかし、それは助けにはならない。 $( '。articleItem')は動的にリスト項目を作成します。事前に

Codepen Project Link

ありがとう!

+0

引用符なしで 'undefined'と比較しようとしましたか? 'undefined'はjavascriptのオブジェクトです – niyasc

+0

'(articleAuthor === "undefined")は 'stringA'型の' undefined'と等しい 'articleAuthor'を意味します。 –

答えて

2

チェックする

+0

助けてくれてありがとう私はあなたの助けに感謝します! – NZMAI

3

私はあなたが要素を削除する必要があると思う:

if (articleAuthor === undefined) { //remove the quote from undefined 
    $('.articleItem').remove(); 
} 

しかし、前述の方法は、すべてのarticleItemを削除するだろう、と行うための最善の方法は、未定義のではないかどうかを確認してelmentsを作成することです:

if(articleAuthor !== undefined){ 
    //create element logic here 
} 
ここ
+1

ありがとうございます私はそれを念頭に置いておきます! – NZMAI

2

このセレクタ:

$('.articleItem') 

は、クラスのarticleItem "を持つ要素のリストを返します、

まず、とあなたのif (articleAuthor === "undefined")を切り替える:あなたはそれがあなたがここに2つのことを行う必要がありundefined

if (typeof articleAuthor === "undefined") { 
    $('.articleItem').html(''); 
} 
2

使用typeofのすべての項目のHTMLを変更するサイクルを持っていますif (typeof articleAuthor === "undefined")

第二に、(if (typeof articleAuthor === "undefined"))場合にも、その内domCache.$wikiArticlesList.appendを包むことができ、それがすべてでアイテムを作成することはありません$('.articleItem').last().html('');

であなたの$('.articleItem').html('');を切り替えます。

+0

この方法がうまくいくようです!ありがとう! – NZMAI

+0

@NZMAI:喜んで –

関連する問題