Placeholder zk中combobox、textbox、doublebox中的占位符属性 如何在占位符中添加内容,如静态内容和动态内容。
e、 g:Placeholder zk中combobox、textbox、doublebox中的占位符属性 如何在占位符中添加内容,如静态内容和动态内容。,placeholder,zk,Placeholder,Zk,e、 g: 在占位符中显示为“输入您的某物”您可以使用EL表达式:- placeholder="Enter ${something.infoData}" 您在EL表达式中编写的任何内容都需要先加载到zul中。因此,请确保您的内容已加载到EL(${}),并且MVVM(@)表达式不能与文本文本混合。因此,以下几点都不起作用: 答复 甲级 { 公共A(字符串s,长v,布尔值is_群){s_=s;v_=v;is_群_=is_群;} 公共字符串getLabel(){return s_;} 公共vo
在占位符中显示为“输入您的某物”您可以使用EL表达式:-
placeholder="Enter ${something.infoData}"
您在EL表达式中编写的任何内容都需要先加载到zul中。因此,请确保您的内容已加载到EL(${}),并且MVVM(@
)表达式不能与文本文本混合。因此,以下几点都不起作用:
答复
甲级
{
公共A(字符串s,长v,布尔值is_群){s_=s;v_=v;is_群_=is_群;}
公共字符串getLabel(){return s_;}
公共void setLabel(字符串s){s_uz=s;}
公共布尔值isGroup(){返回值为_组;}
public Long getValue(){return v_;}
公共字符串getPlaceholder(){返回“请键入一些文本”;}
字符串s_u2;=null;
长v_=null;
布尔值为u组u=null;
}
lm.add(新的A(“今天”,1L,Boolean.TRUE));
lm.add(新的一个(“RE:Bandbox自动完成问题”,2L,Boolean.FALSE));
lm.add(新的A(“,3L,Boolean.FALSE));
添加(新的A(“RE:FileUpload”,4L,Boolean.FALSE));
lm.add(新的A(“,5L,Boolean.FALSE));
lm.add(新的A(“昨天”,10L,Boolean.TRUE));
lm.add(新的A(“,11L,Boolean.FALSE));
lm.add(新的A(“RE:SelectedItemConverter'ite”,12L,Boolean.FALSE));
lm.add(新的A(“上周”,100L,Boolean.TRUE));
lm.add(新的A(“RE:Times_系列图表帮助”,101L,Boolean.FALSE));
lm.add(新的A(“,102L,Boolean.FALSE));
类虚拟机
{
public ListModel getListModel(){return lm;}
}
]]>
在地下室发现了这颗宝石
...
首先我们加载核心ZK标记库,然后我们可以使用
cat
函数将静态文本与动态加载的文本连接起来。但是我通过El expression()将文本与动态内容结合使用,并且它工作正常,那你怎么能不这么说呢working@Sean对于ZK团队默认给出的这一行,您会怎么说?我可以更正,正常的EL表达式可以与文本混合。我不知道。我已经更新了答案,删除了这句话,尽管我的观点仍然是关于MVVM EL表达式的。您能为所有这些代码提供一个解释吗?
enter with dynamic content(@load(something.infoData))
placeholder="Enter ${something.infoData}"
<label value="Literal @load(data)"/>
<doublebox placeholder="@load(vm.placeholder)"/>
public MyViewModel {
private Something something;
public String getPlaceholder() {
return "Enter a " + something.getInfoData();
}
}
<zk> <zscript>
class A
{
public A(String s, Long v, Boolean is_group) { s_= s; v_= v; is_group_= is_group; }
public String getLabel() { return s_; }
public void setLabel(String s) { s_=s; }
public Boolean isGroup() { return is_group_; }
public Long getValue() { return v_; }
public String getPlaceholder() { return "Please type some text"; }
String s_= null;
Long v_= null;
Boolean is_group_= null;
}
lm.add(new A("Today", 1L, Boolean.TRUE));
lm.add(new A("RE: Bandbox Autocomplete Problem", 2L, Boolean.FALSE));
lm.add(new A("", 3L, Boolean.FALSE));
lm.add(new A("RE: FileUpload", 4L, Boolean.FALSE));
lm.add(new A("", 5L, Boolean.FALSE));
lm.add(new A("Yesterday", 10L, Boolean.TRUE));
lm.add(new A("", 11L, Boolean.FALSE));
lm.add(new A("RE: SelectedItemConverter Question' ite", 12L, Boolean.FALSE));
lm.add(new A("Last week", 100L, Boolean.TRUE));
lm.add(new A("RE: Times_Series Chart help", 101L, Boolean.FALSE));
lm.add(new A("", 102L, Boolean.FALSE));
class VM
{
public ListModel getListModel() { return lm; }
}
]]></zscript>
<window id="win" title="Window ZK6 dynamic template" border="normal" width="600px"
apply="org.zkoss.bind.BindComposer" viewModel="@id('vm') @init('VM')" >
<listbox model="@bind(vm.listModel) @template(each.isGroup() ? 'group_model' : 'item_model')">
<listhead>
<listheader hflex="3" label="Column 1"/>
<listheader hflex="1" label="Column 2"/>
</listhead>
<template name="group_model">
<listgroup open="true" label="@load(each.label)"/>
</template>
<template name="item_model">
<listitem vflex="1">
<listcell>
<textbox hflex="1" placeholder="@init(each.placeholder)" value="@bind(each.label)"/>
</listcell>
<listcell>
<label value="@load(each.value)"/>
</listcell>
</listitem>
</template>
</listbox>
</window>
</zk>
<?taglib uri="http://www.zkoss.org/dsp/web/core" prefix="c"?>
...
<doublebox placeholder="@load(c:cat('enter your ',something.infoData))"/>