If-else jquery/javascript
在下面的场景中,“Claim Win”按钮应该显示,但是我得到的是“没有足够的分数…”。有人能解释一下原因吗If-else jquery/javascript,javascript,jquery,Javascript,Jquery,在下面的场景中,“Claim Win”按钮应该显示,但是我得到的是“没有足够的分数…”。有人能解释一下原因吗 data[i].user_points = 1222 data[i].bid = 153 +(data[i].user_points < data[i].bid ? '<li class="list-group-item">\ <span class="badge background-none"><a href="points
data[i].user_points = 1222
data[i].bid = 153
+(data[i].user_points < data[i].bid ?
'<li class="list-group-item">\
<span class="badge background-none"><a href="points"><button>Click here</button></a></badge></span>\
Not enough points for this item.\
</li>'
:
(data[i].stime <= 0 ?
''
:
'<li class="list-group-item center"><button id="claim-'+data[i].item_id+'" class="btn btn-primary btn-sm claim">Claim Win</button></li>'
)
)+
这不是对你问题的回答,但我想继续我对条件运算符格式的评论,而显示格式化代码示例的唯一方法是在答案中 当您像代码一样使用一系列条件运算符时,最好将它们格式化为一个扁平的运算符链,而不是嵌套运算符。说明这一点的一个好方法是使用类似的
if
语句:
if(a==1){
b=‘一’;
}否则{
如果(a==2){
b=两个;
}否则{
如果(a==3){
b=三个;
}否则{
b=‘其他’;
}
}
}
大多数开发人员和样式指南都会建议重新格式化,以删除嵌套和额外的大括号:
if(a==1){
b=‘一’;
}如果(a==2),则为else{
b=两个;
}如果(a==3),则为else{
b=三个;
}否则{
b=‘其他’;
}
这在逻辑上是完全相同的代码,但在这种形式下要清楚得多。(当然,您也可以使用switch
语句或数组来表示此特定代码;这只是格式化if
/else
语句链的一个示例。)
同样的原理也适用于条件运算符。您可以使用带有大量括号的嵌套条件编写类似于if
语句的代码:
b=(
a==1(
“一个”
) : (
a==2(
“两个”
) : (
a==3(
“三个”
) : (
“其他”
)
)
)
);
(这与您使用的代码格式不完全相同;这是一个做作的示例来说明问题。)
正如使用if
语句一样,最好将其展平:
b=(
a==1?'1':
a==2?'2':
a==3?'3':
“其他”
);
同样,它在逻辑上是相同的代码,只是更容易遵循这种方式
事实上,我花了很长时间才将嵌套版本的语法正确化——我不得不使用语法检查编辑器并对其进行大量修改——但平面版本第一次就出现了。提供更多信息,代码前的加号标记是什么?代码后的加号标记是什么?您应该使用
if
语句而不是条件运算符,并且还要注意JavaScript会将数据[i].bid=153
与下一行组合,因为您没有使用分号。e、 g.试试这个,看看会发生什么(在实际的换行符中,我有文本{linebreak}
:var x=123{linebreak}+“hello”
当然,最后的+
会使整个事情成为语法错误。实际上,条件运算符可能还可以——尽管我会简化它们的格式——将它们格式化为一系列if
/else if
/else
语句,而不是引入额外的一组第二个条件上的括号和嵌套。
[
{
"id": "205",
"item_id": "727",
"winner_id": "62",
"bid": "153",
"status": "1",
"date": "2015-09-05 05:53:12",
"exp_date": "2015-09-07 05:53:12",
"user_id": "296",
"item_title": "neptun",
"stime": 84178,
"time_left": "0 d : 23 h : 22 m",
"user_points": "1222",
"user_thumb": "images\/ppic\/15x\/296.jpg?x=timestamp"
}
]