2016-11-28 37 views
0

我在页面中使用clockpicker插件,可以在不重新加载整个页面的情况下启用或禁用时钟。所以,当我加载页面时,我只是初始化它的启用。如何在输入禁用时避免显示bootstrap clockpicker?

$(document).ready(function() { 
    configureClockPickers(); 
}); 

function configureClockPickers(){ 
    $('.clockpicker').each(function(){ 
     $(this).clockpicker({autoclose: true}); 
    } 
} 

如果输入dinamically启用(再次打电话给我的功能configureClockPickers()的时钟是完全显示。

问题出现时输入的dinalically禁用。我不知道如何停止显示。当点击时钟图标(如果点击禁用输入显示无时钟)的时钟

我的时钟作为生成如下:

<div id="clock" class="input-group clockpicker" data-placement="left" data-align="top"> 
    <form:input path="clock1" id="clock1" type="text" cssClass="form-control inputForm inputClock"/>  
    <span class="input-group-addon"><span class="glyphicon glyphicon-time"></span></span> 
</div> 

有什么想法?

非常感谢!

+0

我已经解决了! :https://stackoverflow.com/questions/34978129/clockpicker-how-to-prevent-click-on-input-to-open-clockpicker/47032514#47032514 – Dani

回答

0

当您禁用输入时,您还需要防止从span冒泡click事件。事情是这样的:

var inpDisabled; 

$('.clockpicker .input-group-addon').on('click', function (e) { 
    if(inpDisabled){ 
     e.stopPropagation(); 
    } 
}); 

//... 
//somewhere in the code 

inpDisabled = true; 

之后,你的.clockpicker将听不到click事件嵌套span并不会显示拾取

这是一个通用的解决方案,所以你需要改变它在您的自定义项目

+1

不适合我...我甚至尝试过总是禁用'点击',但clockpicker仍然出现。我已经写在我的onready(和控制台显示“你好”和clockpicker后:(:(。clockpicker。输入组addon')。 (“hello!”); e.stopPropagation(); \t \t}); – Ivan

相关问题