如何在JQuery UI Datepicker中使用不同的日期格式(用于在html上显示和在数据库中存储)
How to use different date formats (for displaying on html and storing in database) in JQuery UI Datepicker?
我想在我的网页上显示以下日期格式:
dd MM, yy
(如23 September, 2015
)
因此我加入了以下JavaScript
$('#datepicker').datepicker({ dateFormat: 'd MM, yy' });
但是MySQL数据库接受以下日期格式来执行查询:
yy-mm-dd
(如2015-09-23
)
在下面的代码中,我试图将MySQL的所需格式存储在一个变量中,通过ajax调用将其传递给PHP
var history_date = $('#datepicker').datepicker({ dateFormat: 'yy-mm-dd' }).val();
但是变量history_date
返回的网页显示格式像23 September, 2015
(这是不适合MySQL查询)。
请给我一些解决方案来访问两种不同的日期格式显示和数据库。
您通常会使用替代字段。因此,您可以为您的前端选择一种格式来显示,但有另一个值要通过ajax发送,这符合您的需求。
$( "#datepicker" ).datepicker({
dateFormat: 'd MM, yy',
altField: "#alternate",
altFormat: "dd-mm-yy"
});
然后可以从#alternate
dom对象中获取日期。这可以是一个隐藏的输入字段。
<input type="hidden" id="alternate">
获取ajax调用的值如预期的那样工作。
var history_date = $('#alternate').val();
我将使用moment.js来格式化您从日期选择器返回的日期。否则,只需抓取日期并适当地设置自己的格式。
var history_date = $('#datepicker').datepicker({ dateFormat: 'dd-mm-yy' }).getDate()
var day = history_date.getDate();
var monthIndex = history_date.getMonth()+1;
var year = history_date.getFullYear();
var date_formatted = year+"-"+month+"-"+day;
相关文章:
- AngularJS/HTML/Bootstrap元素用于动态搜索结果
- HTML/CSS-用于拖放的全页面覆盖
- 一个正则表达式,用于从JS中的HTML标记中删除id、样式和类属性
- css是从远程node.js添加的,但不适用于html页面
- Mailchimp内联表单验证不适用于JS加载的HTML
- window.onload适用于aspx页面,但不适用于普通html
- 来自mysql的动态值用于html代码点火器视图中的图形
- jQuery对象从html表中查询为两个一维数组,用于Chartist图表
- 用于将html转换为bbcode的Javascript,用于带有链接的图像
- 正则表达式,用于从html格式的字符串中提取文本
- 使用jquery将html文件加载到html中,用于离线/本地项目
- HTML Oncick事件仅适用于#Anchor标记
- Jquery DataTables 不适用于使用 javascript 追加 html
- 通过 AJAX 发送表单,HTML 节点选择用于数据发送
- Javascript/Jquery setTimeout 函数不适用于长 html
- 用于提取 HTML 标记子元素的正则表达式
- 在函数中定位动态创建的HTML元素(用于追加事件 - 而不是点击!)jQuery
- 用于比较 HTML 标记内的变量的正则表达式
- 在Javascript中解析html用于画布渲染
- @html.用于显示文本