使用
中的jQuery工具DateInput APIhttp://flowplayer.org/tools/dateinput/
我需要在普通输入框和用于日期输入控件的框之间切换输入框。
使用以下内容切换dateinput日历时我没有问题:
$('#value').dateinput({selectors:true, max: endDay(new Date()), yearRange:[-10,5] });
我遇到的问题是,当我需要将输入框切换回正常状态,而不是将其作为日期输入时,我不能。例如,我想象会有一个API调用,如下所示:
$('#value').dateinput('destroy');
有人知道我能做到什么吗?
答案 0 :(得分:4)
通过.replaceAll()
或.replaceWith()
替换为新输入。
$("#value").replaceWith("<input>");
答案 1 :(得分:1)
来源在这里: https://github.com/jquerytools/jquerytools/blob/master/src/dateinput/dateinput.js
乍一看,似乎没有一种破坏方法,但你可以隐藏它并取消绑定焦点并单击该元素以有效地“删除”它?
不幸的是它没有与命名空间绑定,因此您必须取消绑定输入上的所有焦点/单击事件。如果你有其他需要保留的行为,那么这可能是不可行的。
类似的东西:
$('#value').dateinput('hide');
$('#value').unbind('click').unbind('focus');
编辑:还
$('#value').data('dateinput', null);
如果您想尝试重新打开它。我没有仔细阅读源代码,看看在简单地删除事件处理程序后重新打开它会导致问题。