动态输入datepicker - 未按预期工作

时间:2012-08-15 23:51:32

标签: jquery datepicker

我无法弄清楚我做错了什么。我有动态生成的输入字段,其中class ='freeze-date'仅适用于生成的第一个datepicker输入字段。我有代码@ http://jsfiddle.net/Someguy2k/L9nvs/3/

由于

1 个答案:

答案 0 :(得分:2)

注入标记有几个问题。每行元素中的所有id属性都具有相同的值 这不仅是无效的HTML,而且还会产生副作用,例如这个副作用。

jQuery将查找id并在找到第一个匹配时停止 我通过将i值添加为id属性的附加值,修复了您日历的特定问题。

...  id='freezeby" + i + "'  ...

请参阅DEMO

如果您发现其他元素在与其进行交互时表现相同,则很可能是由于我看到其他id属性也存在相同问题的相同原因。

使用Live()

此外,您正在使用live()。 Live有几个问题,documentation中列出了所有缺点。 Memeory泄漏,意外丢失事件绑定,stopPropagation()因live()气泡事件等方式不起作用。

由于jQuery 1.7 live()已被弃用,因此首选on()。对于您的版本,最好使用bind()将事件绑定到静态元素,使用delegate()将事件绑定到动态元素。