【问题标题】:Date conversion in grails inside javascriptjavascript中grails中的日期转换
【发布时间】:2014-10-14 09:56:10
【问题描述】:

我正在使用本机 grails 日期格式通过以下代码在我的 gsp 中创建一个日期字段:

<tr><td><label>Delivery date: </label>
<g:datePicker name="myDate" date="${new Date()}" id="delDate" /></td></tr> 

在 javascript 中通过 id 捕获日期时,它显示为 null。我的代码如下:

var delDate=$('#delDate').val();

alert("date"+ deldate) is showing dateundefined.

如何获取字符串格式的日期,以便进一步将其作为值传递给 json。

谢谢

【问题讨论】:

    标签: javascript json grails


    【解决方案1】:

    当然它不起作用,因为g:datePicker 标签会转换为 5 个 HTML &lt;select&gt;(日、月、年、小时、分钟)。

    我的建议:

    • 删除id="delDate"属性,
    • 以这种方式重构日期:

    var d = new Date($('#myDate_year').val(),$('#myDate_month').val(),$('#myDate_day').val(),$('#myDate_hour').val(),$('#myDate_minute').val(),$('#myDate_minute').val());
    
    alert(d.toJSON());

    如果您想使用特定的日期格式化程序,我强烈建议您使用Moment.js

    【讨论】:

    • 嗨 Phil,我可以将 2014 年 10 月 15 日星期三 11:35:22 UTC+0530 2014 的日期转换为仅 20141015 格式,因为我必须仅以字符串格式传递该日期,例如 20141015。日期是否.toJSON() 将日期转换为纯字符串格式。
    • 将日期转换为 var delDate = new Date($('#myDate_year').val(),$('#myDate_month').val(),$('#myDate_day') .val(),$('#myDate_hour').val(),$('#myDate_minute').val(),$('#myDate_minute').val());..deldate 提前一个月.eg::如果我选择 2010 年 5 月 15 日,在 javascript 中显示为 2010 年 6 月 15 日。
    • 你可以简单地做这样的事情var d =$('#myDate_year').val()+$('#myDate_month').val()+$('#myDate_day').val()
    【解决方案2】:

    我建议你应该在 g:datePicker 标签中使用 value 而不是 date 属性。您可以查看该here 的文档。

    <g:datePicker name="myDate" value="${new Date()}" id="delDate" />
    

    【讨论】:

      【解决方案3】:

      datePicker 标记中没有 @id。见ref-doc,只有@name

      所以,你的JS调用应该是

      var delDate=$('#myDate').val();
      

      【讨论】:

      • 嗨,感谢您的回复。仍然在警报中显示 dateundefined。
      • 查看生成的 html 代码:没有日期格式的单个字段。相反,至少有 3 个带有隐藏字段的下拉菜单。看起来你必须自己连接日期值
      • 嗨,这不是 html 代码。我已经给出了警报(“日期”+ deldate),所以当我提交页面时,它应该会弹出显示日期 2014 年 10 月 14 日。但它显示的是 dateundefined。这意味着 g 中的日期字段没有值:script by name label.It iscoming null.
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-08-10
      • 1970-01-01
      • 2010-10-20
      • 2012-03-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多