我正在使用Wicket和ajax框架。下拉列表通过检票口填充,onchnage
下拉列表通过ajax
处理
当用户从下拉列表中选择值时,我想在下拉列表中添加动态title
代码是这样的:
DropDownChoice attrDDC = new DropDownChoice("dropDownField",
new PropertyModel(this, "modelObject"),
entityList,
new ChoiceRenderer(element.getEntity().getNameField()));
attrDDC.setNullValid(true);
attrDDC.add(new AjaxFormComponentUpdatingBehavior("onchange") {
@Override
protected void onUpdate(AjaxRequestTarget target) {
if (getModelObject() != null)
nodeAttribute.setIdCodeValue(getModelObject().getId());
else
nodeAttribute.setIdCodeValue(null);
// thisDDC.add(new AttributeAppender("onmouseover",
new Model("Tip('" + ((WorkflowRules)getModelObject()).getRuleName() + "');"), ";"));
// thisDDC.add(new AttributeModifier("title", true, new Model(((WorkflowRules)getModelObject()).getRuleName())));
if (elmntIdDDCMap != null && elmntIdDDCMap.containsKey(thisElmnt.getId()))
{
List<DropDownChoicePanel> ddcPanelList = elmntIdDDCMap.get(thisElmnt.getId());
for (DropDownChoicePanel ddcPanel : ddcPanelList)
{
ddcPanel.setEntityList(attributesList);
target.addComponent(ddcPanel.getThisDDC());
}
}
}
});
add(attrDDC);
thisDDC = attrDDC;
PS:注释行是我尝试的行。
答案 0 :(得分:1)
我认为你应该用“jQuery”重新提出你的问题。如果您使用的是Wicket 6.x.x,那么您实际上已经在使用jQuery;)
Wicket基本上是一个服务器端框架。您想要做的是客户端问题。我不认为Wicket里面有解决方案。但是使用jQuery很容易解决它,而Wicket很好地与jQuery一起玩。
例如,查看如何使用jQuery将工具提示添加到下拉列表项的解决方案:
http://integrant.com/2010/07/23/how-to-add-a-tooltip-to-dropdownlist-items/
jquery tooltip to display full text from dropdown selected value
塞巴斯蒂安