首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >使用Jquery Datepicker的getDate

使用Jquery Datepicker的getDate
EN

Stack Overflow用户
提问于 2010-04-02 03:14:37
回答 5查看 112.4K关注 0票数 18

我正在尝试从我的jquery日期选择器的实现中获取日期,将其添加到一个字符串中,并在div中显示结果图像。然而,有些东西就是不起作用。任何人都可以检出代码并查看它吗?

代码应该是从日期选择器中获取日期,将其组合在一个字符串中,该字符串将具有显示标记所需的代码,图像位于/image中,格式为aYY-MM-DD.png,这是该日期选择器的新手,还不能完全获取它。

代码语言:javascript
复制
<html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />

    <link type="text/css" href="css/ui-lightness/jquery-ui-1.8.custom.css" rel="stylesheet" />  
    <script type="text/javascript" src="js/jquery-1.4.2.min.js"></script>
    <script type="text/javascript" src="js/jquery-ui-1.8.custom.min.js"></script>
    <script type="text/javascript">
        $(function(){
            // Datepicker
            $('#datepicker').datepicker({
                dateFormat: 'yy-mm-dd',
                inline: true,
                minDate: new Date(2010, 1 - 1, 1),
                maxDate:new Date(2010, 12 - 1, 31),
                altField: '#datepicker_value',  
            });             
            //hover states on the static widgets
            $('#dialog_link, ul#icons li').hover(
                function() { $(this).addClass('ui-state-hover'); }, 
                function() { $(this).removeClass('ui-state-hover'); }
            );          
        });
        //var img_date = .datepicker('getDate');
            var day1 = $("#datepicker").datepicker('getDate').getDate();                 
            var month1 = $("#datepicker").datepicker('getDate').getMonth() + 1;             
            var year1 = $("#datepicker").datepicker('getDate').getFullYear();
            var fullDate = year1 + "-" + month1 + "-" + day1;
    var str_output = "<h1><center><img src=\"/images/a" + fullDate + ".png\"></center></h1><br/><br>";
    page_output.innerHTML = str_output;
    // writing the results to the div element (page_out)
    </script>
</head>
<body style="background-color:#000;color:#fff;margin: auto auto;">



    <!-- Datepicker -->

    <div id="datepicker"></div>

    <!-- Highlight / Error -->
    <p>Date Value: <input type="text" id="datepicker_value" /></p>
    <div id="page_output" style="text-align:center; margin-top:80px; margin-bottom:20px; "></div>


</body>

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2010-04-02 04:07:38

我认为你会想要在你的日期选择器的初始化中添加一个'onSelect‘事件处理程序,这样当用户选择一个日期时,你的代码就会被触发。在jsFiddle上试用一下

代码语言:javascript
复制
$(document).ready(function(){
    // Datepicker
    $('#datepicker').datepicker({
        dateFormat: 'yy-mm-dd',
        inline: true,
        minDate: new Date(2010, 1 - 1, 1),
        maxDate:new Date(2010, 12 - 1, 31),
        altField: '#datepicker_value',
        onSelect: function(){
            var day1 = $("#datepicker").datepicker('getDate').getDate();                 
            var month1 = $("#datepicker").datepicker('getDate').getMonth() + 1;             
            var year1 = $("#datepicker").datepicker('getDate').getFullYear();
            var fullDate = year1 + "-" + month1 + "-" + day1;
            var str_output = "<h1><center><img src=\"/images/a" + fullDate +".png\"></center></h1><br/><br>";
            $('#page_output').html(str_output);
        }
    });
});
票数 43
EN

Stack Overflow用户

发布于 2014-05-13 21:25:29

您可以使用datepicker的formatDate函数直接指定日期格式,而不是解析日、月和年。在我的示例中,我使用了"yy-mm-dd",但是您可以使用您选择的任何格式。

代码语言:javascript
复制
$("#datepicker").datepicker({
    dateFormat: 'yy-mm-dd',
    inline: true,
    minDate: new Date(2010, 1 - 1, 1),
    maxDate: new Date(2010, 12 - 1, 31),
    altField: '#datepicker_value',
    onSelect: function(){
        var fullDate = $.datepicker.formatDate("yy-mm-dd", $(this).datepicker('getDate'));
        var str_output = "<h1><center><img src=\"/images/a" + fullDate +".png\"></center></h1><br/><br>";
        $('#page_output').html(str_output);
    }
});
票数 2
EN

Stack Overflow用户

发布于 2010-04-02 03:20:45

这一行看起来有问题:

代码语言:javascript
复制
page_output.innerHTML = str_output;

您可以在jQuery中使用.innerHTML,也可以在不使用它的情况下使用它,但您必须以某种方式对选择器进行语义寻址:

代码语言:javascript
复制
$('#page_output').innerHTML /* for jQuery */
document.getElementByID('page_output').innerHTML /* for standard JS */

或者更好

代码语言:javascript
复制
$('#page_output').html(str_output);
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2562986

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档