Javascript sails.js日期选择器不是';t保存所选值
我正在尝试向编辑页面添加一个日期字段,当日期选择器工作并且可以选择日期时,保存表单时,该字段在数据库中保持为空 谁能告诉我如何从sails.js中的日期选择器中获取日期 .ejs文件:Javascript sails.js日期选择器不是';t保存所选值,javascript,node.js,date,sails.js,Javascript,Node.js,Date,Sails.js,我正在尝试向编辑页面添加一个日期字段,当日期选择器工作并且可以选择日期时,保存表单时,该字段在数据库中保持为空 谁能告诉我如何从sails.js中的日期选择器中获取日期 .ejs文件: <form action="/user/update/<%= user.id %>" method="POST" class="form-signin"> <h2>Update User Information</h2> First Name:
<form action="/user/update/<%= user.id %>" method="POST" class="form-signin">
<h2>Update User Information</h2>
First Name: <input value="<%= user.first_name %>" name="first_name" type="text" class="form-control"/>
Last Name: <input value="<%= user.last_name %>" name="last_name" type="text" class="form-control"/>
Title: <input value="<%= user.title %>" name="title" type="text" class="form-control"/>
Username: <input value="<%= user.username %>" name="username" type="text" class="form-control"/>
Email: <input value="<%= user.email %>" name="email" type="text" class="form-control"/>
Date of Birth: <input value="<%= user.dob %>" name="dob" type="date" class="form-control"/>
Gender: <input value="<%= user.gender %>" name="gender" type="text" class="form-control">
Zip Code:<input value="<%= user.zip_code %>" name="zip_code" type="text" class="form-control">
Activation Date:<input value="<%= user.activation_date %>" name="activation_date" type="date" class="form-control"/>
Expiration Date:<input value="<%= user.expiration_date%>" name="expiration_date" type="date" class="form-control"/>
Admin: <input value="<%= user.admin %>" name="admin" type="text" class="form-control"/>
<input type="submit" value="Proceed" class="btn btn-lg btn-primary btn-block"/>
<input type="hidden" name="_csrf" value="<%= _csrf %>" />
使用日期输入类型时,需要将值设置为正确的表示形式。您从Sails得到的是一个调用了
toString()
的日期
设置值时,您应该能够格式化ejs文件中的日期,如下所示:
<% var dob = (new Date(d)).toISOString().slice(0,10) %>
Date of Birth: <input value="<%= dob %>" name="dob" type="date" class="form-control"/>
出生日期:
您必须发布处理/user/update/:id
操作的代码。如果您在服务器端显示获取的数据也会有所帮助,因为我们不知道您使用的是什么日期选择器及其发送的格式。表单似乎正在将日期提交到数据库,但当再次打开记录进行编辑时,字段未设置为数据库中的值。它们只是显示“YY/MM/YY”默认值。抱歉,如果您不发布任何服务器端代码,也不知道发布的是什么实际数据,就无法提供帮助。我的坏消息。我添加了调用编辑表单的代码和从编辑表单调用的更新函数。如果我缺少您需要查看的任何代码,请告诉我。感谢您的帮助!好的,现在,发布的是什么数据?请尝试在更新函数中添加console.log(req.param('dob'))
以查看。
<% var dob = (new Date(d)).toISOString().slice(0,10) %>
Date of Birth: <input value="<%= dob %>" name="dob" type="date" class="form-control"/>