【问题标题】:Syntax error with datepicker日期选择器的语法错误
【发布时间】:2016-04-21 12:17:38
【问题描述】:

Datepicker 正在选择日期,但没有将其保存到我的数据库中。尝试以下代码中显示的几个选项,但它仍然无法正常工作。这段代码给了我一个错误。如何正确格式化 f.text_field?

           <div class="form-group">
           <label class="control-label col-sm-5" for="time_stop">Job Date:</label>
           <div class="col-sm-7">
             <%= f.text_field :jobdate, :id => @appointment.jobdate, "data-provide" => 'datepicker', @appointment.jobdate, class: "form-control" %>
           </div>
           <script>
  $(function() {
    $( "#jobdate" ).datepicker();
  });
  </script>
        </div>

错误信息:

/home/ubuntu/workspace/agss/app/views/appointments/_form.html.erb:95: 语法错误,意外的 ',',期待 => ...epicker', @appointment.jobdate, class: "form-control" );@out... ... ^

【问题讨论】:

  • 错误消息:/home/ubuntu/workspace/agss/app/views/appointments/_form.html.erb:95:语法错误,意外',',期待=> ...epicker ', @appointment.jobdate, class: "form-control" );@out... ... ^

标签: jquery ruby-on-rails datepicker


【解决方案1】:

参数顺序错误。应该是

<%= f.text_field :jobdate, "data-provide" => 'datepicker', class: "form-control" %>

不是

<%= f.text_field :jobdate, :id => @appointment.jobdate, "data-provide" => 'datepicker', @appointment.jobdate, class: "form-control" %>

请注意,您不能传递@appointment.jobdate,因为该值已经从与表单耦合的对象中获取。

注意f.。这是一个表单生成器,而不是标准的 text_field_tag 助手。

【讨论】:

  • 好的,我做了这个改变。从 _form/html.erb 提交时,我的字段 jobdate 仍未保存到数据库中。当我提交表单并进入下一个显示页面时,jobdate 是空白的。这是更新的代码
    'datepicker', class: "form-control" %>
  • 你的控制器有问题。打开一个不同的问题并发布您的控制器的代码。
  • 还要注意,我所有的其他 30 个字段都被保存到数据库中。
  • 我找到了解决方案。我将 javascript 更改为
  • 关于如何将日期格式化为 mm/dd/yyy 的任何建议?此选项不起作用: $('#datepicker').datepicker({ dateFormat: 'dd-mm-yy' });我遇到的问题是在保存日期后返回编辑我将日期显示为 1901,因为它正在解析 2016-01-01。
猜你喜欢
  • 2020-02-27
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-10-29
  • 1970-01-01
相关资源
最近更新 更多