我用zk建立了一个门户网站。我有一些数据,我想展示它们。 我做了这个:
<div class="row-fluid">
</div>
<hbox style="margin-top:20px">
<vbox>
<div>
<textbox value="@bind(vm.uname)"/>
<datebox id="in" value = "@bind(vm.date1)"/>
<datebox id="in1" value = "@bind(vm.date2)"/>
<button onClick="@command('searchValue')" label="Cerca" disabled="@load(empty vm.uname)" />
</div>
<listbox height="260px" model="@bind(vm.value)" emptyMessage="Nessun risultato presente"
selectedItem="@bind(vm.userSelected)">
<listhead>
<listheader label="Date" />
<listheader label="Hour" />
<listheader label="Value (bpm)"/>
</listhead>
<template name="model">
<listitem>
<listcell label="@bind(each.date)"></listcell>
<listcell label="@bind(each.min)"></listcell>
<listcell label="@bind(each.value)" ></listcell>
</listitem>
</template>
</listbox>
</vbox>
</hbox>
<charts id="chart2" type="line"
title="Dati"/>
好吧,我有3个文本框(1个文本框和2个日期框)。 当我在这3个文本框中插入数据时,它会附加应用程序调用方法searchValue(它可以正常工作)。此方法在自动初始化的ArrayList中搜索数据。
现在我想改变。我想要的值vm.uname不会被传递但是被隐藏并且等于$ {empty execution.userPrincipal.name? &#39; anonimo&#39; :execution.userPrincipal.name}
如果我这样做了:
<textbox value="${empty execution.userPrincipal.name?
'anonimo' : execution.userPrincipal.name }"/>
<datebox id="in" value = "@bind(vm.date1)"/>
<datebox id="in1" value = "@bind(vm.date2)"/>
<button onClick="@command('searchValue')" label="Cerca" disabled="@load(empty vm.uname)" />
</div>
恰好出现了值,但例如按钮始终处于禁用状态。我该如何解决?
在searchValue中必须到达vm.uname值!
答案 0 :(得分:1)
“Cerca”按钮被禁用,因为在你的第二个片段中没有对vm.uname的绑定,因此在视图模型中它永远不会被设置为“非空”。
此外,我无法理解“禁用”的目的:在您进行更改后,搜索中的用户名是来自执行的值或默认值;你还需要禁用那个按钮吗?
也许您应该展示视图模型的一些相关部分以获得更多帮助。