JavaScript:使用Jquery获取日期输入字段的值

时间:2017-10-25 15:36:40

标签: javascript jquery

我想获取日期输入字段的值并提醒它,但我总是得到一个空字符串或未定义。任何有关如何获得该领域的价值的帮助将不胜感激。

代码 -

var end = $('#datetimepicker2').val();

$('#sub').on('click', function () {
    alert(end);
});

HTML CODE

<input type="text" class="form-control input-group-sm" placeholder="Enter Date" id="datetimepicker" aria-label="...">

我正在使用bootstrap-datepicker插件来获取日期。 编辑:我想以yyyy / mm / dd格式获取日期并将其存储在变量中

3 个答案:

答案 0 :(得分:2)

执行var end = $('#datetimepicker2').val();时,<input id="datepicker2">元素没有值。

它仍然为空,因为您尚未定义事件处理程序以在值更改时更新它。以下内容应该是您正在尝试完成的工作示例。

<table>
    <tr>
        <td><strong>Date Time Picker:</strong></td>
        <td>
            <input id="datetimepicker2" class="datetimepicker" value=""/>
        <td>
        <td><button id="sub">Submit</button></td>
    </tr>
</table>

<script>
    // If the datepicker2 input is empty, this will be empty, even after you change it.
    var end = $('#datetimepicker2').val();
    $('#datetimepicker2').datetimepicker();

    // This will update the "end" variable as it changes.
    $(document).on('change', '#datetimepicker2', function() {
        end = $(this).val();
    });

    $(document).on('click', '#sub', function () {
        alert(end);
    });
</script>

ps 我将 $(x).on(event,function) 更改为 $(document).on(event,element,function) 因为我随着时间的推移操纵了DOM,所以我得到了更好的结果。

答案 1 :(得分:0)

 $('#datePicker').datepicker()
        .on("input change", function (e) {
            //$('.loadingBackground').show();

            var date = $(this).datepicker('getDate');
alert(date);

});

每次更改日期时都会提醒日期。

或点击事件:

var date = $('#datePicker').datepicker('getDate');
$('#sub').on('click', function () {
    alert(date);
});

答案 2 :(得分:0)

您必须在jquery中使用相同的ID,如下所示:

$('document').ready(function(){
    $('#sub').on('click', function () {
        var end = $('#datetimepicker').val()
        alert(end);
    });
)}

您可能希望在选择日期后单击#sub按钮获取值。