Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/72.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript &引用;或;条件获取jQuery中的任一ID值_Javascript_Jquery - Fatal编程技术网

Javascript &引用;或;条件获取jQuery中的任一ID值

Javascript &引用;或;条件获取jQuery中的任一ID值,javascript,jquery,Javascript,Jquery,我正在为我们的项目创建预订引擎。使用jQuery和UI日期选择器 如果用户单击了回程,我们需要获取出发和回程日期。若用户单击了单程旅行,我们只需要获取出发日期 如期获得约会效果良好 我的问题在这里: <div class="returnTrip"> <input class="form-control" id="returnTripDepart" /> <input class="form-control" id="returnTripReturn"

我正在为我们的项目创建预订引擎。使用jQuery和UI日期选择器

如果用户单击了回程,我们需要获取出发和回程日期。若用户单击了单程旅行,我们只需要获取出发日期

如期获得约会效果良好

我的问题在这里:

<div class="returnTrip">
    <input class="form-control" id="returnTripDepart" />
    <input class="form-control" id="returnTripReturn" />
</div>
<div class="oneWayTrip">
    <input class="form-control" id="oneWayTripDepart" />
</div>
var nowDate = new Date();
var today = new Date(nowDate.getFullYear(), nowDate.getMonth(), nowDate.getDate(), 0, 0, 0, 0);
var maxLimitDate = new Date(nowDate.getFullYear(), nowDate.getMonth(), nowDate.getDate() + 360, 0, 0, 0, 0);

$('#returnTripDepart').datepicker({
    minDate: today,
    dateFormat: 'd M yy',
    maxDate: maxLimitDate,
    numberOfMonths: 2
});

$('#returnTripReturn').datepicker({
    dateFormat: 'd M yy',
    maxDate: maxLimitDate,
    numberOfMonths: 2
});

$('#oneWayTripDepart').datepicker({
    minDate: today,
    dateFormat: 'd M yy',
    beforeShowDay: highlightDays,
    maxDate: maxLimitDate,
    numberOfMonths: 2
});

function submitForm(){
    var $getDepartureDate = $('#returnTripDepart').val(), 
        $departureDate = moment($getDepartureDate).format('YYYYMMDDhhmm'), 
        $getReturnDate = $('#returnTripReturn').val(), 
        $returnDate = moment($getReturnDate).format('YYYYMMDDhhmm'), 
        $getOnewayDepartureDate = $('#oneWayTripDepart').val(), 
        $oneWayDepartureDate = moment($getOnewayDepartureDate).format('YYYYMMDDhhmm');

    var $getOnewayDepartureDate_1 = $('#oneWayTripDepart').val();
    var $departureDate_1 = moment($getOnewayDepartureDate_1).format('YYYYMMDDhhmm');
        if( !$getDepartureDate ) return;
        if ($('.trip-type--container li.oneWayTrip').hasClass('selected')) {
            $returnDate = '';
        }
        else {
            if (!$getReturnDate)
                return;
        }
    var $data = {
            ELEMENT_BY: 'D',
            D_DATE_1: ($departureDate == 'Invalid date' ? '' : $departureDate) || ($departureDate_1 == 'Invalid date' ? '' : $departureDate_1),
            D_DATE_2: ($returnDate == 'Invalid date' ? '' : $returnDate)
          }
     var $tripFlowUrl = $.param($data);
     alert($tripFlowUrl);
}
D_DATE_1-->我需要根据用户单击的“return”或“oneway”存储ID“returnTripDeep”或“onewayTripDeep”的值

我的逻辑在回程时运行良好。当我选择单向时,显示空的日期值。不确定如何对D_DATE_1使用“或”逻辑

HTML:

<div class="returnTrip">
    <input class="form-control" id="returnTripDepart" />
    <input class="form-control" id="returnTripReturn" />
</div>
<div class="oneWayTrip">
    <input class="form-control" id="oneWayTripDepart" />
</div>
var nowDate = new Date();
var today = new Date(nowDate.getFullYear(), nowDate.getMonth(), nowDate.getDate(), 0, 0, 0, 0);
var maxLimitDate = new Date(nowDate.getFullYear(), nowDate.getMonth(), nowDate.getDate() + 360, 0, 0, 0, 0);

$('#returnTripDepart').datepicker({
    minDate: today,
    dateFormat: 'd M yy',
    maxDate: maxLimitDate,
    numberOfMonths: 2
});

$('#returnTripReturn').datepicker({
    dateFormat: 'd M yy',
    maxDate: maxLimitDate,
    numberOfMonths: 2
});

$('#oneWayTripDepart').datepicker({
    minDate: today,
    dateFormat: 'd M yy',
    beforeShowDay: highlightDays,
    maxDate: maxLimitDate,
    numberOfMonths: 2
});

function submitForm(){
    var $getDepartureDate = $('#returnTripDepart').val(), 
        $departureDate = moment($getDepartureDate).format('YYYYMMDDhhmm'), 
        $getReturnDate = $('#returnTripReturn').val(), 
        $returnDate = moment($getReturnDate).format('YYYYMMDDhhmm'), 
        $getOnewayDepartureDate = $('#oneWayTripDepart').val(), 
        $oneWayDepartureDate = moment($getOnewayDepartureDate).format('YYYYMMDDhhmm');

    var $getOnewayDepartureDate_1 = $('#oneWayTripDepart').val();
    var $departureDate_1 = moment($getOnewayDepartureDate_1).format('YYYYMMDDhhmm');
        if( !$getDepartureDate ) return;
        if ($('.trip-type--container li.oneWayTrip').hasClass('selected')) {
            $returnDate = '';
        }
        else {
            if (!$getReturnDate)
                return;
        }
    var $data = {
            ELEMENT_BY: 'D',
            D_DATE_1: ($departureDate == 'Invalid date' ? '' : $departureDate) || ($departureDate_1 == 'Invalid date' ? '' : $departureDate_1),
            D_DATE_2: ($returnDate == 'Invalid date' ? '' : $returnDate)
          }
     var $tripFlowUrl = $.param($data);
     alert($tripFlowUrl);
}

用户不应该同时选择“返回”和“单向”,对吗?那么,为什么不使用相同的变量来保存所需的值呢?那么你就不必担心你正在挣扎的那部分逻辑了。@kittykittybangbang:是的。。用户只能选择其中一种方式。如果选择了“返回行程”,则必须获取“.returnTrip#ReturnTripDeep”日期值。如果选择了“单向旅行”,则必须获取“.oneWayTrip#OneWayTripDeep”日期值。这是目前唯一需要的逻辑。谢谢