有人能告诉我我的jQuery live方法有什么问题吗?

时间:2009-12-30 07:23:39

标签: jquery live livequery

我创建了这个简单的时间选择器应用程序,但由于某种原因,这段代码无法正常工作。我有它的工作(也许这是我的想象)。

我有4个单选按钮。每个按钮都附加了一个点击事件(使用jquery的实时方法),我会显示一个DIV并隐藏其他DIV。我也(我以为我是)将插件的方法添加到新显示的DIV中。

看看下面的链接,你会明白我的意思。第一个DIV可以工作,但后续的DIV没有。我错过了什么?

谢谢!

http://jsbin.com/ebige3

1 个答案:

答案 0 :(得分:1)

您的代码存在许多问题。首先,有几个文本框的id为starttimeendtime,而id只能在文档中出现一次。

导致您的问题的原因是,点击任何单选按钮后,timepicker将初始化为与{{1}匹配的所有元素选择器。这意味着第一个$("#starttime, #endtime")(可见),工作正常,选择字段定位正常,但对于后续的div,它将被定位在他们'的div'重新关联是隐藏的,因此,他们的位置无法计算。

我会考虑更改代码,以便你的div有id称为“recur1”,“recur2”等,而不是“每日”和“每周”,并且还给他们一个上课,“复发”。然后你就可以删除所有的if语句,只需执行:

div

它还可以帮助您解决问题:

$('.recur').hide();
$('#recur'+recurType).show();