我正在尝试找出这个解决方案,但我还没有找到任何东西。有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>
答案 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
}
}
});