我正在写一个网页,从数据库的结果必须显示根据选定的日期。这里我使用jquery datepicker来选择日期,下面是我的代码。
Index.html索引

</head>
<body>
    <marquee>
        <h1>This is an example of ajax</h1>
    </marquee>

    <p>
        Date: <input type="text" id="startDatePicker">
    </p>
    <p>
        Date: <input type="text" id="endDatePicker">
    </p>

    <form name="vinform">
        Enter id:<input type="button" id="somebutton" value="Click Me">
    </form>
    <span id="somediv"> </span>
    <script type="text/javascript" src="tableGenerator.js"></script>

</body>
</html>

表格生成器.js
$('#somebutton').click(
        function() {
            $("#startDatePicker").datepicker();
            $("#endDatePicker").datepicker();
            $.getJSON('Controller', {
                //the parameters go here
            }, function(searchList) {
                var $table = $('<table>').appendTo($('#somediv'));
                $.each(searchList, function(index, userBean) {
                    $('<tr>').appendTo($table).append(
                            $('<td>').text(userBean.caseNumber)).append(
                            $('<td>').text(userBean.caseOwner)).append(
                            $('<td>').text(userBean.status)).append(
                            $('<td>').text(userBean.issue)).append(
                            $('<td>').text(userBean.reason)).append(
                            $('<td>').text(userBean.age));
                });
            });
        });

在这里,我需要先选择日期,然后当我点击提交时,它应该会显示表格。但在我的例子中,当我单击日期选择器文本框时,它不起作用,但是如果我单击按钮,然后单击日期选择器文本框,它就可以正常工作。
请告诉我哪里出了问题,如何解决。
谢谢

最佳答案

你必须这样称呼:

 $("#startDatePicker").datepicker();
 $("#endDatePicker").datepicker();

在Click函数之外,或者只在用户单击按钮时应用datepicker。
所以你必须这么做
$(document).ready(function() {
        $("#startDatePicker").datepicker();
        $("#endDatePicker").datepicker();
});

因此,有了这个,您将在页面加载上应用datepicker,而无需单击按钮

10-05 23:12