2016-08-04 3 views
0
で条件付きで、動的に

をdivのクラスを追加します。 "red"そうでなければ私は動的にそうようにjQueryを使用してDIV追加していjQueryの

私は以下を試してみました(バリエーション、引用符、一重引用符、二重引用符など)。

$('#content').append('<div class="tiles'+ x > 0 ? "green" : "red"+ ' m-b-10">some text</div>');`enter code here` 

私の質問は、実行可能ですか? b)はいの場合、どうですか?

+0

に動作しますか?私はあなたが説明したアイデアとは異なると思います。 – Sherlock

答えて

0

私がこの意志はhtmlです何

$('#content').append('<div class="tiles '+ (x > 0 ? "green" : "red")+ ' m-b-10">some text</div>'); 
+0

これは完全に働いた、私はカッコを除いてすべてを試した(中括弧を試した) ありがとうman –

1

これはあなたの探しているものですか?

$(document).ready(function(){ 
 
    var x = 5; 
 
    var color = x > 0 ? 'green' : 'red'; // Preprocess the class first 
 
    $('#content').append('<div class="tiles ' + color + ' m-b-10"></div>'); 
 
    
 
    x = -1; 
 
    var color = x > 0 ? 'green' : 'red'; // Preprocess the class first 
 
    $('#content').append('<div class="tiles ' + color + ' m-b-10"></div>'); 
 
    
 
    // For one liner solution 
 
    x = 10; 
 
    $('#content').append('<div class="tiles ' + (x > 0 ? 'green' : 'red') + ' m-b-10"></div>'); 
 
});
div { 
 
    width: 50px; 
 
    height:50px; 
 
} 
 
.green{ 
 
    background-color: green; 
 
} 
 

 
.red { 
 
    background-color: red; 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<div id="content"> 
 
</div>

+0

これもうまくいきましたが、私は下のubmのソリューションのような1つのライナーを選んでいました。ありがとう –

+0

@Panikos私はそれを修正することができます、私はちょうど私のコードの可読性を考慮した – Sherlock

関連する問題