无法通过JS获取输入值

时间:2014-03-20 11:09:00

标签: javascript php jquery

我有一个表单,其中包含两个jQuery datapicker输入字段和一个表单按钮

From: <input class="input-large" type="text" id="datepicker_from" name="datepicker_from">

To: <input class="input-large" type="text" id="datepicker_to" name="datepicker_to">

<a class="btn btn-primary" onclick="get_call_details(1, from_date, to_date )" >Check Availability</a>

我要做的是获取两个字段datepicker_fromdatepicker_to的日期,然后点击表单按钮调用函数get_call_details(1, from_date, to_date )

问题是我无法获得两个日期字段的值

以下是我试图获取日期字段值的方法

$("#datepicker_from").blur(function(){
    var from_date = document.getElementsByName('datepicker_from').value;
    alert (from_date);
});
$("#datepicker_to").blur(function(){
    var to_date = document.getElementsByName('datepicker_to').value;
    alert (to_date);
});

这是我试图将两个日期传递给

的JS函数
function get_call_details(id, from_date, to_date) {
    alert(id, from_date, to_date  );
    $('#dvloader').show();
    $.ajax({
        url: 'outlook_calendar.php',
        type: 'POST',
        data: {'userid': id},
        success: function (data) {
            $(this).parent("#availability").append(data);
            $("#availability").html(data);
                $('#dvloader').hide();
        }
    });
}

我想要的只是获取两个字段的日期并通过单击按钮将其传递给函数,但我无法获取日期。我将不胜感激任何帮助。

3 个答案:

答案 0 :(得分:1)

我认为更好的方法是在get_call_details函数中读取日期和日期。

Function get_call_details(id)
{
    from_date = $("#datepicker_from").val();
    to_date = $("#datepicker_to").val();
}

答案 1 :(得分:1)

为什么不将这一切写入附加到click事件的jquery函数:

From: <input class="input-large" type="text" id="datepicker_from" name="datepicker_from">

To: <input class="input-large" type="text" id="datepicker_to" name="datepicker_to">

<a class="btn btn-primary" id="checkavail" >Check Availability</a>

$('#checkavail').click(function(){
    var from = $("#datepicker_from").datepicker('getDate');
    var to = $("#datepicker_to").datepicker('getDate');
    $('#dvloader').show();
    $.ajax({
        url: 'outlook_calendar.php',
        type: 'POST',
        data: {'userid': 1, 'from':from, 'to':to},
        success: function (data) {
            $(this).parent("#availability").append(data);
            $("#availability").html(data);
                $('#dvloader').hide();
        }
    });

答案 2 :(得分:0)

getElementsByName()返回结果数组。你应该使用getElementById或使用jQuery选择器$('#yourId')。val()。