jQuery隐藏只触发一次
jQuery hide only fires once
我有一个日历在选择日期时不关闭。因此,我针对一个类(.day)在单击时关闭日历。但是,当我重新打开日历并选择一个新日期时,它不会第二次关闭。我在这里寻找答案,尽管标题和问题相似,但代码并不完全相同。。。
$('.day').click(function () {
$(".datepicker").hide();
});
<span class="input-append date dp-ticket" data-date="today" data-date-format="dd-mm-yyyy">
<input type="text" class="add-on form-control col-xs-10 col-sm-10 col-md-10 col-lg-10" placeholder="Or, choose any date" name="startdate" id="startdate">
<button class="add-on btn btn-search col-xs-2 col-sm-2 col-md-2 col-lg-2" type="button">
<span class="icon-calendar"></span>
</button>
</span>
尝试在.上使用
$('.day').on('click', function () {
$(".datepicker").hide();
});
很抱歉,除了在jQuery中,我在代码示例中没有看到.day或.datepicker。也许我错过了什么。。。。lol
我的猜测是,脚本注册了原始的隐藏事件,但没有注册。当你尝试更改日期时,日期选择器会再次显示,只要脚本知道,当你更改日期时它仍然是隐藏的。
您可以尝试放置.change()
来检测日期字段值的变化(或放置日期数据的任何位置)
$(".foo").val().change(function() {
$(".datepicker").hide();
});
您可能需要设置一个默认值,但每次更改它时,它都会运行函数来隐藏.datepicker.
我不确定.day
是如何实现的,因为您没有在代码中显示它,但因为它只触发一次,所以我认为您正在动态地将.day
添加到DOM中。
如果是这样的话,你可以这样做:
$('SELECTOR_OF_PARENT').on('click', '.day', function(){
$(".datepicker").hide();
});
你也可以这样做
$(document).on('click', '.day', function(){
$(".datepicker").hide();
});
以下是.on()
的更多信息
相关文章:
- 在上一次响应时隐藏Qualtrics项目-Javascript
- 一次显示一个隐藏指令-AngularJS
- 单击其他元素或鼠标向上时隐藏输入框,但保留一次焦点
- Javascript 计时器只调用一次 Code 隐藏方法
- 一次显示/隐藏一个Javascript
- jQuery隐藏只触发一次
- SlideJS隐藏仅适用于一次
- 删除/隐藏链接后最后一次出现的字符串
- 角度材质$mdDialog隐藏一次后不显示
- 如何修复此代码以显示 10 秒并一次又一次地永远隐藏 10 秒
- 使用javascript一次加载/取消隐藏一个图像
- jQuery通过关闭/隐藏一次切换一个元素
- javascript循环需要显示隐藏列表onclick一次一个
- Twitter引导程序模式隐藏事件只触发一次
- jQuery-隐藏在Chrome中无法正常工作的显示(只能工作一次)
- 我如何才能得到一个表单提交只有一次隐藏的值已经从谷歌地理编码服务更新
- 显示/隐藏或切换具有相同类的多个元素,单击时一次只显示一个
- 如何一次隐藏高度表中的所有级数?
- 隐藏/显示功能一次只工作一个?——Jquery
- 一次隐藏多个元素的任何更好方法