Web服务器上的日期时间格式/区域设置不正确

时间:2017-06-08 09:05:14

标签: javascript c# asp.net date iis-8

我想知道以前是否有人偶然发现了这种情况。请告诉我你是如何修理它的。

因此,在我的开发PC上,我的日期格式是DD / MM / YYYY。当我"运行"(F5)项目和测试内容时,它显示相同的格式。 但是,当发布到Web服务器并且用户转到日期时,格式为MM / DD / YYYY。

供您参考: Web服务器上的设置与开发PC上的设置完全相同。两者都具有相同的区域,控制面板中的日期时间格式相同 - >区域。

我没有在我的代码中编写任何有趣的区域设置,因为它只是一个显示用户选择的javascript日历的dateTimePicker。

参考代码: datetimepicker:

       <script type="text/javascript">
                                $(document).ready(function() {
                                // Datepicker Popups calender to Choose date.
                                $(function() {
                                $("#datepicker_end").datepicker();
                                // Pass the user selected date format.
                                $("#format").change(function() {
                                    $("#datepicker_end").datepicker("option", "dateFormat", "dd-mm-yy");
                                });
                                });
                                });
                </script>


        <script type="text/javascript">
                                $(".date-pick").datepicker();
                                $(".date-pick").datepicker('setDate', new Date());
                                var now = new Date();
                                var day = ("0" + now.getDate()).slice(-2);
                                var month = ("0" + (now.getMonth() + 1)).slice(-2);
                                var today = now.getFullYear()+"-"+(month)+"-"+(day) ;
                                $('#datepicker_start').datepicker({ dateFormat: 'dd-mm-yyyy' }).val(today);
                                $('#datepicker_start').show();
                </script>

这就是我能给你的一切。谷歌搜索多项内容,但无法找到解决方案。感谢。

EDIT 好吧,我按照Frederico的建议做了格式化工作。没运气。 其他人有其他想法/建议??

2 个答案:

答案 0 :(得分:0)

当然,你不是唯一一个,请检查一下:

jQuery UI DatePicker - Change Date Format

解决方案是:

var date = $('#datepicker').datepicker({ dateFormat: 'DD/MM/YYYY' }).val();

修复它。格式可能会根据浏览器的设置而改变。

<script type="text/javascript">
    $(document).ready(function() {
      // Datepicker Popups calender to Choose date.
      $(function() {                                        
        $("#datepicker_start").datepicker();
        // Pass the user selected date format.
        $("#format").change(function() {
          $("#datepicker_start").datepicker({ dateFormat: 'DD/MM/YYYY' });
        });
      });
   });
</script>

答案 1 :(得分:0)

So this was the solution I came across. Thanks for the one input. How to change date format (MM/DD/YY) to (YYYY-MM-DD) in date picker

Changed my code to match this in a way and it worked.

 $(function(){
    $("#to").datepicker({ dateFormat: 'yy-mm-dd' });
    $("#from").datepicker({ dateFormat: 'yy-mm-dd' }).bind("change",function(){
        var minValue = $(this).val();
        minValue = $.datepicker.parseDate("yy-mm-dd", minValue);
        minValue.setDate(minValue.getDate()+1);
        $("#to").datepicker( "option", "minDate", minValue );
    })
});