防止使用beforeShow显示JQuery Timepicker

时间:2013-02-07 09:16:44

标签: php jquery timepicker

我正在尝试找出这个解决方案,但我还没有找到任何东西。有timepicker的beforeShow属性。我想要实现的是,在显示时间戳之前我想做一些验证。如果验证通过,则时间戳将出现,但如果失败,则不会弹出时间戳。我怎样才能做到这一点?我试着把

beforeShow: function(){return false}, 

但没有任何反应

编辑:

我遇到一个解决方案,说删除该字段并替换为新字段。 Tt工作,时间戳不再出现了。但是,如果验证通过,则必须再次使用该字段。现在我做不到。看起来文本字段不会替换为正确的字段。因为当我提醒parentNode时,它正在获取<td>节点,而不是<form>节点。我把那个表格放在桌子上。我的JS代码:

$('input[id^=timepicker]').timepicker({beforeShow: function(instant){

        if(!validation){ //validation fail
            var element = document.getElementById(instant.id);
            var clonedElement = element.cloneNode(true);
            var parentElement = element.parentNode;
            parentElement.replaceChild(clonedElement, element);
        else{
            $("#"+instant.id).timepicker();
        }
    }

});

我的HTML就像

<form>
<table>
    <tr><td><input type="text" id="timepicker1" name="tp" readonly="true"/></td></tr>
</table>
</form>

1 个答案:

答案 0 :(得分:0)

Trt this;

$('.timepicker').timepicker({
    beforeShow: function(){
                    var validation = true;
                    if(validation){
                        $.timepicker.hide();
                       //this one should not be display since there is an error
                    }

                }
});