2009-05-19 7 views
1

これは初めての投稿です。JQuery:別のタグが空であるかどうかを表示/非表示

次のようにHTMLは次のようになります

<span class="label">Label:</span>
<span class="value">{{Value}}</span>

基本的には、{{値}}は挿入変数(またはしない)であり、PHP/MySQLのを介し。もちろん
{{値}}が空の場合は、ページがレンダリングされるときに、あなたは以下の取得:

<span class="label">Label:</span>
<span class="value"></span>

アイデアはラベルのためにある:何も{{に存在しない場合は非表示にします値}}。

$(。値:空)& if文を使用してさまざまな例を試しましたが、それは.labelを無視します。

ご提案は大歓迎です。事前に
おかげで、
ロブ

+0

{{Value}}が存在するかどうかに応じて、発光するかどうかを決めるphp構文があります。 PHPを制御する場合は、サーバー上でifステートメントを使用することを検討して、有効な行のラベルのみを送信してください。 –

答えて

3
$(".value").each(function(){ 
    var value = $.trim($(this).text()) 
    if(value == ""){ 
    $(this).prev(".label").hide() 
    } 
}) 

PSを試してみてください。 .label .valueペアをLIやDIVのようなものにカプセル化するのがよいでしょう

+0

私自身の指示では、trim($ this)deal –

+0

トーマスが正しいと思うのは、オリジナルの空のセレクタがうまくいかなかったからです。 – duckyflip

+0

マークアップを編集して、.labelクラスの要素がすぐに確認できるようにマークアップを編集しました.valueの前に(他のタグがあって、それが動作しないようにしていました)、それは魅力を発揮します。 ありがとうございました。答えた。 ロブ –

0

if ($('.value').text() == '') { $('.label').hide(); } 
+0

ページに複数の.value/.labelペアがある場合は、それが動作しますか? –

+0

ありがとうございます。これを試してみましたが、それでもまだラベルが表示されています: –

+0

Rob、トーマスが指摘しているように、値/ラベルのペアが1組ある場合 - 複数のペアがあります。条件を満たしていない場合、それらを識別するために使用できるhtml要素に他のプロパティ(idまたは何か)がありますか?DOMツリーのどこにありますか? –

関連する問題