我使用Appfuse开发了一个webmodule。我有一个预定义的数据库,其中有几个表,其中有Date字段。我能够使用Jetty成功运行appfuse,但是,而不是向我显示日期选择器,它只是显示文本字段,我必须手动输入日期。是否有办法获得默认日期选择器?
我执行了以下步骤生成模板
- appfuse:gen-model:从数据库表中生成Java类。
- appfuse:gen:生成并安装测试、dao、管理器、基于pojo的控制器和视图。
- appfuse:remove:移除已安装的工件
- appfuse:full-source:将appfuse基本项目转换为完整源代码没有AppFuse依赖。也重命名包以匹配您的项目的groupId。
- appfuse:copy-templates:为CRUD复制FreeMarker模板生成到src/test/resources/appfuse。这些模板可以是
如果您的属性类型是java.util。日期,您应该为文本字段获得日期选择器。如果没有,请检查JavaScript控制台,可能有错误。您也可以尝试将<input type="text">
更改为<input type="date">
。
这是AppFuse默认使用的日期选择器技术:
-
向WebJar添加依赖项:
<dependency> <groupId>org.webjars</groupId> <artifactId>bootstrap-datepicker</artifactId> <version>1.3.1</version> </dependency>
-
然后在日期字段上使用class="date",并使用下面的HTML/JS来初始化该字段。
<link rel="stylesheet" type="text/css" media="all" href="/webjars/bootstrap-datepicker/1.3.1/css/datepicker.css" /> <script type="text/javascript" src="/webjars/bootstrap-datepicker/1.3.1/js/bootstrap-datepicker.js"></script> <script type="text/javascript"> $(document).ready(function() { $('.date').datepicker({format: "mm/dd/yyyy", weekStart: "0"}); }); </script>