在我的脚本中建立一个if else语句。
如果我要运行data = 0
,请返回:
<i class="fa fa-check-circle"></i>
如果我要运行data = 1
,请返回:
<i class="fa fa-id-badge"></i>
如果我要运行data = 2
,请返回:
<i class="fa fa-quora"></i>
到目前为止,我已经构建了一个简单的If Else语句。返回的数据为fa fa-check-circle
时,我的脚本显示为0
,否则显示为fa fa-id-badge
。
有人知道我如何为所有选项定义。像这样:
(data == 0)
(data == 1)
(data == 2)
这是我的剧本:
<script type="text/javascript">
$( document ).ready(function() {
$('#grid1').DataTable({
"bprocessing": true,
"serverSide": true,
"ajax": {
"url": "response1.php",
"type": "POST",
"error": function(){
$("#grid_processing").css("display","none");
}
},
"columnDefs": [
{ "targets": 0, "render":
function ( data, type, full, meta ) {
return '<i class="'+ (data == 0 ? 'fa fa-check-circle"></i>' : 'fa fa-id-badge"></i>');
} }
]
});
});
</script>
答案 0 :(得分:2)
这实际上只需要一个基本的if ... else
语句,而不是一个三元语句。 https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/if...else
function ( data, type, full, meta ) {
var class;
if (data == 0) {
class = 'fa fa-check-circle';
} else if (data == 1) {
class = 'fa fa-id-badge';
} else if (data == 2)) {
class = 'fa fa-id-quora';
}
return '<i class="' + class + '"></i>');
}
您当然可以继续使用三元语言,但这有点难看:
function ( data, type, full, meta ) {
return '<i class="fa ' + (data == 0 ? 'fa-check-circle' : (data == 1 ? 'fa-id-badge' : 'fa-quora')) + '"></i>');
}
答案 1 :(得分:1)
有多种方法可以做到这一点,其中之一就是开关盒。
var icon = '';
function(data, type, full, meta ){
switch(data){
case '0':
icon = "fa-check-circle";
break;
case '1':
icon = "fa-check-badge";
break;
case '2':
icon = "fa-check-quora";
break;
default:
icon = "fa-check-circle";
}
return '<i class="fa '+ icon +'"></i>';
}
答案 2 :(得分:0)
您可以使用开关代替三进制,这样更易读。
function (data, type, full, meta) {
var iconClass;
switch (data) {
case 0:
iconClass = "check-circle";
break;
case 1:
iconClass = "id-badge";
break;
case 2:
iconClass = "quora";
break;
}
return "<i class='fa fa-" + iconClass + "'></i>";
}