2

如何防止触发日历,不仅通过单击图标而且通过单击整个标签?在这种情况下,如果我尝试在没有子选择器的情况下直接执行此操作,则它不起作用。

我的实现

HTML:

<div id="datetimepicker1" class="input-append date">
    <input type="text" disabled="true"></input> 
    <span class="add-on disabled">
      <i data-time-icon="icon-time" data-date-icon="icon-calendar"></i>
    </span>
</div>

JS:

  $(function () {
      $('#datetimepicker1').datetimepicker();

      $(".disabled").children().bind('click', function () {
          return false;
      });
  });
4

2 回答 2

1

编辑:http: //jsfiddle.net/vg4xa/1/

您必须在 datepicker init 之前设置事件处理程序,并停止事件传播:

$(function () {
    $('.disabled').bind('click', function(e){
        e.stopImmediatePropagation();
    });

    $('#datetimepicker1').datetimepicker();
});
于 2013-02-08T13:31:34.233 回答
0

我知道这个答案不适用于主题,但在问题描述中,有一个日期选择器,下一个代码对我有用,以防止日期选择器在跨度或日历图标单击时打开

    if (disable) {
        $('#datetimepicker1').datepicker('_detachEvents');
        $('#datetimepicker1').datepicker('_detachSecondaryEvents');
    } else {
        $('#datetimepicker1').datepicker('_attachEvents');
        $('#datetimepicker1').datepicker('_attachSecondaryEvents');
    }
于 2014-05-12T14:51:51.310 回答