Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/list/4.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获取结束时间_Javascript_Jquery - Fatal编程技术网

Javascript 如何使用jquery获取结束时间

Javascript 如何使用jquery获取结束时间,javascript,jquery,Javascript,Jquery,在jsbin演示中,我获得了开始时间,但我不知道如何获得结束时间。 我应该如何进一步获得结束时间。 我不想更改html。 我必须使用当前html获取结束时间。 我从过去三天就开始努力了 $("#btnAllot").click(function () { var calculateStartMins = $('td.csstd:first');var calculateStartHrs = calculateStartMins.parent().prevAll().and

在jsbin演示中,我获得了开始时间,但我不知道如何获得结束时间。 我应该如何进一步获得结束时间。 我不想更改html。 我必须使用当前html获取结束时间。 我从过去三天就开始努力了

$("#btnAllot").click(function ()
            { var calculateStartMins = $('td.csstd:first');var calculateStartHrs = calculateStartMins.parent().prevAll().andSelf().find('td:first-child').filter(function(){return $.trim($(this).text()) !== '';}).last();
                    var fromTime = calculateStartHrs.text().trim() + calculateStartMins.text().trim();
                    var fromTimeAMPM = fromTime.substring(5, 7);
                    var fromTimeHour = fromTime.trim().substring(0, 2);
                    var fromTimeMinute = fromTime.substring(7, 10);
                    var hidFromTime = fromTimeHour.trim() +":"+ fromTimeMinute.trim();alert("Start Time is "+hidFromTime.trim()); 
             var endTime = $('td.csstd:last').parent().next().andSelf().find('td:first-child').
                filter(function ()
                {return $.trim($(this).text()) !== '';
               }).last();alert("End Time is "+endTime);
            });   

我想你的想法太复杂了。。。看看这是否适合您:

$("#btnAllot").click(function(){
    var begin = $("td.csstd:first"), end = $("td.csstd:last"),
        beginHour, endHour, endMinute, currentHour, beginTime, endTime;
    $("tr.csstablelisttd").each(function(){
        var minuteTd = $(this).find("td").eq(1),
            t = $(this).find("td:first").text().trim();
        (t.length) && (currentHour = t);
        (minuteTd.filter(begin).length > 0) && (beginHour = currentHour);
        (minuteTd.filter(end).length > 0)   && (endHour   = currentHour);
    });

    endHour = endHour.replace(/00/, "").split(":");
    endHour[0] = Number(endHour[0]);
    endMinute = (Number(end.text().trim())+15) % 60;
    if (endMinute == 0) {
        endHour[0] = (endHour[0] + 1) % 12;
        if (endHour[0] == 0) {
            endHour[0] = 12;
            endHour[1] = endHour[1] == "AM" ? "PM" : "AM";
        }
    }
    (endHour[0] < 10) && (endHour[0] = "0"+endHour[0]);
    (endMinute < 10) && (endMinute = "0"+endMinute);

    beginTime = beginHour.replace(/00/, begin.text().trim()); 
    endTime   = endHour[0] + ":" + endMinute + endHour[1];

    alert("Start time is "+beginTime);
    alert("End time is "+endTime);
});
$(“#btnAllot”)。单击(函数(){
变量begin=$(“td.csstd:first”),end=$(“td.csstd:last”),
开始,结束时间,结束分钟,当前时间,开始时间,结束时间;
$(“tr.csstablelisttd”)。每个(函数(){
var minuteTd=$(this.find(“td”).eq(1),
t=$(this.find(“td:first”).text().trim();
(t.长度)和(当前小时=t);
(分钟过滤器(开始).length>0)和&(beginHour=currentHour);
(分钟过滤器(结束)。长度>0)和(结束小时=当前小时);
});
endHour=endHour.replace(/00/,“”)。拆分(“:”);
endHour[0]=数字(endHour[0]);
endMinute=(数字(end.text().trim())+15)%60;
如果(endMinute==0){
结束时[0]=(结束时[0]+1)%12;
如果(结束时间[0]==0){
endHour[0]=12;
结束时间[1]=结束时间[1]=“上午”?“下午”:“上午”;
}
}
(结束时间[0]<10)和&(结束时间[0]=“0”+结束时间[0]);
(endMinute<10)和&(endMinute=“0”+endMinute);
beginTime=beginHour.replace(/00/,begin.text().trim());
endTime=endHour[0]+“:”+endMinute+endHour[1];
警报(“开始时间为”+开始时间);
警报(“结束时间为”+结束时间);
});


Aletheios每个时间段为15分钟。如果您只选择了一个时间段02:00 pm,则开始时间为02:00 pm,结束时间为02:15 pm。像那样,其他人我看不到Html,请用jsbinOk发布您的答案,我明白了。这让事情变得有点复杂。。。我已经更新了我的答案,见上文。此外,我完全使用了你的HTML结构,因为你说你不想更改HTML。