javascript - JS : concatenating html (with +) -> only print html if condition is true?

标签 javascript jquery

不太知道如何标题这个问题。 我的问题可能相当简单,但我不知道正确且有效的解决方案。

if ( rt > 0 ) retweets = '<div class="stats"><b>' + rt + '</b> Retweets</div>';

var tweet = 
'<article class="item tweet">' +
    '<h4 class="tweet_from_user_name">' + tw.from_user_name +
    '<p class="tweet_text">' + tw.text + '</p>' +
    retweets + 
'<article>';

$('#twitter').html(tweet);

所以我遇到的问题是这样的。我正在打印一 strip 有“用户名”和“推文文本”的推文,并且希望显示“转发”,但前提是它们可用。

所以我不想写“0 转发”,而是只是不显示 <div>包含转发。

我如何确保 retweets如果 rt 则变量不是 printet小于 0。现在这可以工作。然而唯一的是,retweets now 未定义,如果 rt小于 0。

感谢您的帮助。

最佳答案

var retweets = "";
if ( rt > 0 ) retweets = '<div class="stats"><b>' + rt + '</b> Retweets</div>';

关于javascript - JS : concatenating html (with +) -> only print html if condition is true?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15234467/

相关文章:

javascript - jQuery 中的单击事件调用两次或多次

javascript - Angular:带有 *ngClass 的条件类

javascript - jQuery $ ('parent > *' ) 选择器和带有点击委托(delegate)的 iOS

jquery - 使用变换时的堆叠顺序(z-index)

javascript - RGB 到十六进制代码

javascript - 两个数组中最接近值的集合

javascript - 在新选项卡中渲染静态内容(express、ejs)

jquery - Javascript block 在 mvc3 razor 模板中呈现为 html 实体字符串

javascript - BlueImp Gallery - 如何停用滑动事件

javascript - 在两个不同的模块和两个不同的js文件之间共享服务