首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >G:使用jquery UI datePicker的datePicker

G:使用jquery UI datePicker的datePicker
EN

Stack Overflow用户
提问于 2013-12-04 02:45:08
回答 1查看 1.1K关注 0票数 0

我正在使用datePicker.js来显示grails datePicker。我有开始日期和结束日期

代码语言:javascript
复制
g:datePicker class='StartDatetime' precision='minute'

现在我正在尝试为datePicker设置最小和最大日期。将此代码放在就绪函数下不起作用。在代码中是否还有其他地方我需要进行更改才能看到函数的工作?

代码语言:javascript
复制
$("#StartDatetime").datepicker({
     onSelect: function (selected) {
         $("#EndDatetime_input").datepicker("option", "minDate", selected)
     }
 });

 $("#EndDatetime_input").datepicker({
     onSelect: function (selected) {
         $("#StartDatetime_input").datepicker("option", "maxDate", selected)
     }
 });
EN

回答 1

Stack Overflow用户

发布于 2014-01-22 13:53:10

将src/templates/scaffolding/renderEditor.template中的'renderDateEditor‘替换为以下代码:

代码语言:javascript
复制
 private renderDateEditor(domainClass, property) {
   def precision = (property.type == Date || property.type == java.sql.Date || property.type == Calendar) ? "day" : "minute";
   if (!cp) {
       return "<g:datePicker name=\"${property.name}\" precision=\"${precision}\" value=\"\${${domainInstance}?.${property.name}}\" />"
   } else {
       if (!cp.editable) {
           return "\${${domainInstance}?.${property.name}?.toString()}"
       } else {
           def out = new StringBuffer("")

           out << "<input type=\"text\" name=\"${property.name}_datepicker\" id=\"${property.name}_datepicker\" value=\"<g:formatDate date=\"\${${domainInstance}?.${property.name}}\" formatName=\"dateonly.date.format\" />\"/>"
           out << "<input type=\"hidden\" name=\"${property.name}_day\" id=\"${property.name}_day\" value=\"<g:formatDate date=\"\${${domainInstance}?.${property.name}}\" format=\"dd\" />\"/>"
           out << "<input type=\"hidden\" name=\"${property.name}_month\" id=\"${property.name}_month\" value=\"<g:formatDate date=\"\${${domainInstance}?.${property.name}}\" format=\"MM\" />\"/>"
           out << "<input type=\"hidden\" name=\"${property.name}_year\" id=\"${property.name}_year\" value=\"<g:formatDate date=\"\${${domainInstance}?.${property.name}}\" format=\"yyyy\" />\"/>"
           out << """<g:javascript>
                         \$(document).ready(function () {
                             \$("#${property.name}_datepicker").datepicker({
                                 dateFormat:'dd/MM/yy',
                                 onClose: function(dateText, inst) {
                                         var date = new Date(dateText.replace(/(\\d+).(\\d+).(\\d+)/, '\$3/\$2/\$1'));
                                         if (!isNaN(date)) {
                                             \$("#${property.name}_month").val(date.getMonth()+1);
                                             \$("#${property.name}_day").val(date.getDate());
                                             \$("#${property.name}_year").val(date.getFullYear());
                                         }
                                       },
                                 showAnim: "slide",
                                 showOptions: {direction: 'up'},
                                 showOn: "both",
                                 autoSize: true,
                                 constrainInput: true,
                                 showButtonPanel: true
                             });
                         })
                     </g:javascript>"""
           return out.toString()
       }
   }}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20359166

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档