我从MySQL数据库中检索数字(整数或浮点(,并将它们放入表单中。如果值不为null,我希望复选框可见。然而,ng-show和其他指令似乎无法检查null。
理想情况下,我想要:
<input type="checkbox" ng-hide = "{{x.thenumber === null}}" />
这不会隐藏任何字段,即使某些返回值为null。
x.thenumber==0匹配null,但它也匹配零值,这是我不想要的。
我有:
- 尝试了不同的运算符(!=,==,==(
- 尝试匹配空字符串,未定义,NaN
- 在phpMyAdmin中确认这些值为null
- 在生成的HTML中确认空值所在的位置没有任何内容(如空格(
- 尝试了不同的指令(ng show if not null vs ng hide if null(
- 考虑过使用类似typeof((的JavaScript,但在AngularJS表达式中似乎无法做到这一点
这里面有秘密吗?似乎这应该是可能的,而不必构建自定义过滤器或控件。
您的问题是试图在ng-hide
中使用插值语法。如果您将其更改为ng-hide="x.thenumber === null"
,它应该可以工作。