如果data.entities.length>;0,第三运算符不';不支持Javascript/jQuery?

如果data.entities.length>;0,第三运算符不';不支持Javascript/jQuery?,javascript,jquery,html,Javascript,Jquery,Html,如果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(tog

如果
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中使用第三个运算符吗?

您使用的条件运算符在
if()
语句中,该语句只有在
长度为正时才会成功,因此
切换
将始终为

您应该删除
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); 

你的三级考试没有意义。它总是会产生true,因为这是执行它所必需的
if
的条件。它根本不起作用,这个
{“消息”:“No se encontraron normas”,“entities”:[]}
data.entities.length
的来源,对于这种情况,意味着没有实体,因此长度应该为零
$(“sinResultadosBuscarNormas”)
不显示且
$(“#resultadoNorma”)
不适用hide@ReynierPM:将其反转。当
.length
0
时,
sinResultadosBuscarNormas
应显示,而另一个应隐藏。无论如何,这就是在代码中写入逻辑的方式。如果您希望相反,则反转布尔值。但如果您对根本不工作,然后描述这意味着什么。你是说既不露也不藏?你必须传达这些信息。也许我从一开始就错了,对此很抱歉,我的想法是:如果
data.entities.length>0
,那么
#resultadoNorma.show&&&#sinResultadosBuscarNormas.hide
否则相反的
#resultadoNorma.hide&&#sinResultadosBuscarNormas.show
(这是一种伪代码). 我应该说,默认情况下,
\resultadoNorma&&sinResultadosBuscarNormas
都是隐藏的,意思是
style=“display:none”
。我将逻辑反转为
$('#resultadoNorma').toggle(!data.entities.length)
$(“#sinResultadosBuscarNormas”).toggle(!!data.entities.length)并且它不工作意味着逻辑是错误的OK,如果您想在
.length>0
时显示
resultadoNorma
,则原始逻辑是正确的。如果它不起作用,那么还有其他问题,您必须提供问题的完整演示。但问题中显示的唯一问题是使用此代码修复的。