如果data.entities.length > 0
我需要切换可见/隐藏两个不同的DIV,这就是我正在做的事情:
if (data.entities.length > 0) {
var toggle = data.entities.length ? true : false;
// if condition is true then this will show otherwise it will hides
$('#resultadoNorma').toggle(toggle);
// this is the reversal process
// if condition is true then this will goes hide otherwise it will goes show
$("#sinResultadosBuscarNormas").toggle(!toggle);
}
但它不起作用,因为没有DIV显示/隐藏无论发生什么条件,错误是什么?我可以在Javascript中使用三级运算符吗?
答案 0 :(得分:1)
您对条件运算符的使用位于if()
语句中,只有在.length
为正时才会成功,因此toggle
始终为true
。
您应该删除if()
声明。
var toggle = data.entities.length ? true : false;
$('#resultadoNorma').toggle(toggle);
$("#sinResultadosBuscarNormas").toggle(!toggle);
或者只是摆脱条件,并直接传递.length
。尽管如此,强迫一个布尔可能是个好主意。
$('#resultadoNorma').toggle(!!data.entities.length);
$("#sinResultadosBuscarNormas").toggle(!data.entities.length);