Javascript 获取jquery中表的上一个或下一个单元格值

Javascript 获取jquery中表的上一个或下一个单元格值,javascript,jquery,html,Javascript,Jquery,Html,可能重复: 我正在通过拖动时隙单元格来选择时隙。 选择时间段后,我在文本框中输入姓名,然后为该时间段分配患者预约。 我必须在数据库中插入患者姓名(如abc)、开始时间(如上午8:00 0)和结束时间(如上午8:00 30)。 如何在jquery中获得这三个值。使用新的time元素()。这样就很容易找到时间 下面是一个完整的示例,介绍如何获取第一个选定的单元格和最后一个选定的单元格。在用户单击更新按钮后执行选择 <!doctype html> <html> <he

可能重复:

我正在通过拖动时隙单元格来选择时隙。 选择时间段后,我在文本框中输入姓名,然后为该时间段分配患者预约。 我必须在数据库中插入患者姓名(如abc)、开始时间(如上午8:00 0)和结束时间(如上午8:00 30)。 如何在jquery中获得这三个值。

使用新的
time
元素()。这样就很容易找到时间

下面是一个完整的示例,介绍如何获取第一个选定的单元格和最后一个选定的单元格。在用户单击更新按钮后执行选择

<!doctype html>
<html>
<head>
    <script 
        src="http://ajax.aspnetcdn.com/ajax/jQuery/jquery-1.7.2.min.js">
    </script>
    <script 
        src="http://ajax.aspnetcdn.com/ajax/modernizr/modernizr-2.0.6-development-only.js">
    </script>
    <script>
        $(function () {
            var start = $("td.csstdhighlight:first > time").attr("datetime");
            var end = $("td.csstdhighlight:last > time").attr("datetime");
        });
    </script>
</head>
<body>
    <table border="1">
        <tr><td class="csstdhighlight">
            <time datetime="2000-01-01 08:00:00">00</time>
        </td></tr>
        <tr><td class="csstdhighlight">
            <time datetime="2000-01-01 08:15:00">15</time>
        </td></tr>
        <tr><td class="csstdhighlight">
            <time datetime="2000-01-01 08:30:00">30</time>
        </td></tr>
        <tr><td><time datetime="2000-01-01 08:45:00">45</time></td></tr>
    </table>
</body>
</html>

$(函数(){
var start=$($td.csstdhighlight:first>time”).attr(“datetime”);
var end=$($td.csstdhighlight:last>time”).attr(“datetime”);
});
00
15
30
45

请注意,如果您想支持Internet Explorer 8或更低版本,则需要确保IE将新的HTML5
time
元素视为默认元素。最简单的选择是将as包含在上面的示例中,或者如果您想了解详细信息,可以阅读博客文章。

在我看来,要使时间表看起来很棒,并在各种浏览器上提供良好的用户体验,需要做大量的工作。 也许您可以使用jQuery full calendar()并定制它以满足您的需要

以下是在一天内创建时间事件的演示:


只需对html稍作修改,例如向时间单元格添加一个类和一些数据属性,就可以利用
jQuery.data()
并使用类简化单元格的定位

 <td class="csstablelisttd time" data-hour="9" data-minute="45"> 45 </td>
这是一个非常简单的工作版本,使用时间单元格上的click事件。您的鼠标选择方法不正确;它似乎不起作用,点击更方便用户。这不会完成你的整个应用程序,但会给你一些未来的想法


为什么这很重要?可以在任何浏览器中使用一行JavaScript,或者,如果我把时间从早上8:00 0点拖到30点,然后我在文本框中键入一些名称,然后单击更新按钮,然后文本框值转到分配的时间段,那么我的问题是如何在jquery变量中获取这些值,以便进一步操作。在我的回答中,我告诉你如何使用新的HTML5语义元素
time
标记HTML,以便使用jQuery获取约会的开始和结束时间。你们都知道这个名字了。它存在于文本框中。你收到我的任务了吗?我没有使用html 5时间段单元格中的值是动态的,而不是静态的。你没有收到我的任务。如果我将时间从上午8:00 0拖到30,然后我在文本框中键入一些名称,然后单击“更新”按钮,然后文本框的值转到分配的时间段,那么我的问题是如何才能获得这些值抱歉,但是我认为在当前的情况下,不需要改变HTML或者试图解析单元格中的值,比较它们并提取时间间隔,这不是一个简单的解决方案。这就是为什么我建议使用一个专门的小部件来解决您现在和将来可能遇到的问题。您仍然可以使用几乎相同的代码,只需将相同的类添加到所有选定的类。你所拥有的不起作用,你的问题是如何获得价值观。从这个简单的模型到拥有html,用当前的jquery代码做你想做的事情是不可能的。你可以在你的小提琴中使用HTML5,我不能使用HTML5。我没有使用HTML5,
数据-
属性在HTML4中工作。你应该在你的问题中更详细。您询问如何获取一些值,然后抱怨您的选择代码不起作用,人们试图为您提出的问题提供解决方案。这需要时间和努力来帮助你!!
$('button').click(function() {
    var msg = 'No Bookings',
        $booked = $('.booked');
    if ($booked.length) {
        msg = [];
        $booked.each(function() {          
            var data = $(this).data()
            msg.push(data.hour + ':' + data.minute + ' - ' + data.patient)
        })
        msg = msg.join('\n');
    }
    alert(msg)
})