Jquery无法获取datepicker值

时间:2014-06-27 04:00:44

标签: javascript jquery jquery-ui-datepicker

关于此代码:

<input type="text" id="dateFrom1" name="dateFrom1" class="form-control datePicker"/>
            <i class="ace-icon1 fa fa-calendar"/>

<script type="text/javascript">
    $('.datePicker').datepicker();
</script>

当我提交表单时,params.dateFrom1保存datePicker的值。 但是,当我使用这种方式时,我无法获得datePicker的值

<input type="text" id="dateFrom1" name="dateFrom1" class="form-control datePicker" disabled/>
            <i class="ace-icon1 fa fa-calendar" onclick="showPicker('#dateFrom1')"/>
<script type="text/javascript">
    $('.datePicker').datepicker();

    function showPicker(ele) {
        $(ele).datepicker('show');
    }
</script>

事实是输入框在我选择日期后显示值,当我alert($('#dateFrom1'))时我也提醒了日期值,但是当我提交表单时,我得到null

2 个答案:

答案 0 :(得分:2)

<强> Working Demo

  1. 您正在.datepicker()级定义.datePicker函数。 在showPicker()中,您传递的是#dateFrom1,即datePicker 认为这是未定义的。

  2. 此外,请将您的datepicker初始化代码包装在$(document).ready(..)


  3. HTML

    <input type="text" id="dateFrom1" name="dateFrom1" class="form-control datePicker" disabled/>
    <i class="ace-icon1 fa fa-calendar" onclick="showPicker('.datePicker')">Icon</i>
    

    JS

    $(document).ready(function(){
         $('.datePicker').datepicker();
    });
    function showPicker(ele) {
        $(ele).datepicker('show');
    }
    

    建议:另外,如果您使用的是jQuery,我建议您使用jQuery .click()而不是内联onclick=".."

答案 1 :(得分:1)

试试此代码jsfiddle

<input type="text" id="dateFrom1" name="dateFrom1" class="form-control datePicker" disabled/>
<i class="ace-icon1 fa fa-calendar" id="button" onclick="showPicker('#dateFrom1')">button</i>
<script>
$(function () {

    $('.datePicker').datepicker();
    $('#button').click(function () {
        $("#dateFrom1").datepicker('show');

    });


});
</script>