【问题标题】:Rails datetime with single textbox for date and time drop downs带有单个文本框的 Rails 日期时间,用于日期和时间下拉菜单
【发布时间】:2010-07-29 01:00:13
【问题描述】:

我有一个带有日期时间输入的 rails 表单。

我想让日期输入单个文本框,用户将以 MM/DD/YYYY 格式(或通过 jQuery 日期选择器)输入该文本框,然后将时间输入设为基于 12 小时的时间下拉菜单。我找到了这个插件 - http://code.google.com/p/rails-twelve-hour-time-plugin/ - 来处理 12 小时时间部分,但我不确定如何将日期(并且只有日期)设为单个文本框。

我可以通过这个插件将其更改为多个文本框而不是多个下拉菜单 - http://www.railslodge.com/plugins/981-date-time-text-field-helpers

我想用最少的控制器逻辑来做到这一点,所以如果可以用 Rails 知道如何连接它们的方式命名字段,那将是理想的。

【问题讨论】:

    标签: ruby-on-rails


    【解决方案1】:

    在单个文本字段中,您只能通过 javascript 掩码执行此操作,在输入字段中使用日期的每个部分创建隐藏字段。

    如果您无论如何都必须使用 javascript,请使用它来选择日期或信任用户以指定格式输入日期,这两种情况都会为您提供格式化字符串,因此您可以简单地使用

    # params[:date_as_str] = "2010/07/29 10:00 AM"
    object.date = DateTime.strptime(params[:date_as_str], "%Y/%m/%d %H:%M %p")
    

    您还可以创建一个自定义助手来在单个文本字段上制作 javascript 的“掩码”。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-06-10
      • 1970-01-01
      • 2013-08-29
      • 1970-01-01
      • 1970-01-01
      • 2015-06-04
      • 1970-01-01
      相关资源
      最近更新 更多