我是Wicket的新手,在檢票器中配置文本字段時遇到問題。我需要在此文本字段配置期間添加一些Javascript,以便我可以將其轉換爲Bootstrap Datepicker元素(我已經使用DateTimeField和DateTextField,並且它們添加了日曆,小時和分鐘字段,我不想要)Wicket TextField - 添加Javascript
I嘗試下面的代碼 -
HTML
<div class="input">
<div class="input-group date">
<input wicket:id="dateValue" class="std" style="color: black;" type="text" value="Date value" />
<span class="input-group-addon dateTimePick"><span class="glyphicon glyphicon-calendar"></span></span>
</div>
</div>
的Java
private TextField<String> addValueDatePickerNew(final MarkupContainer parent, final String id, final IModel<String> model)
{
final TextField<String> result = new TextField<String>(id, model) {
private static final long serialVersionUID = 1L;
@Override
protected void onConfigure()
{
setVisibilityAllowed(true);
setRequired(true);
}
@Override
protected void onComponentTag(ComponentTag tag)
{
super.onComponentTag(tag);
String jsDateField = "{console.log('From ReportFilterValueEditor');}";
tag.put("onload", jsDateField);
}
};
result.setOutputMarkupId(true);
parent.add(result);
return result;
}
上面的代碼工作,並在onload中添加JS語句,但是,尋找另一種方法來添加Javascript,以便我可以執行更多的JS行來實現我需要的功能。
Wicket支持資源加載(css,js,...)。核心元素是方法Component.renderHead。你可能會發現有用的這部分的urser指南: https://ci.apache.org/projects/wicket/guide/8.x/single.html#_adding_resources_to_page_header_section –
Thq @Andrea Del Bene。資源加載我已經完成了使用您提供的鏈接中提到的方法。我正在尋找添加像AjaxRequestEvent一樣可用的AppendJavaScript()方法的自定義JavaScript。 – ChilBud