<div class="row">
<div class="col-md-6" data-bind="visible: application.candidateMostRecentAcademic" style="display:none;">
<span>Education:</span>
<!-- ko if: application.candidateMostRecentAcademic != null -->
<!-- ko with: application.candidateMostRecentAcademic[0] -->
<span data-bind="text: $data.degreeTypeName"></span>
<span data-bind="text: $data.institutionName"></span>
<span data-bind="text: $data.dateToYear"></span>
<!-- /ko -->
<!-- /ko -->
</div>
</div>
仅当application.candidateMostRecentAcademic(array)存在时,我才会使列可见。
但我还想为一个长度为0(不为空)的数组添加一个条件。
所以,当我尝试做的时候,
<div class="col-md-6" data-bind="visible: application.candidateMostRecentAcademic.length != 0" style="display:none;">
它给了我一个错误,说它无法访问空对象的“长度”。所以,我想要做的是,我想将一个长度为0的数组设置为null,这样就可以像null对象一样隐藏它。
如何使用敲除数据绑定来做到这一点?
答案 0 :(得分:1)
如果我理解正确,如果数组不是if
并且null
不等于length
,您希望0
语句通过}?
如果是这种情况,您可以在模板中执行此操作:
<div class="col-md-6" data-bind="visible: application.candidateMostRecentAcademic && application.candidateMostRecentAcademic.length !== 0">
答案 1 :(得分:0)
在viewmodel中添加另一个名为isColumnVisible的成员,并使用此成员显示和隐藏列。
var viewModel={
isColumnVisible=true;
loadData:function(){
// code to load data;
// application= something
if(application.candidateMostRecentAcademic ===null){
this.isColumnVisible=false;
}
}
}