Yii2:如何使用jQuery使<div>变为禁用/只读

3
我需要禁用或将 Yii2 框架下的 yii2-date-picker-widget 图标设置为只读。
日期选择器小部件由两个部分组成:一个用于图标的 <span> 和一个用于日期的 <input>。我可以使用 jQuery 禁用 <input>,但是无法禁用 <span>
这是 jQuery 代码:
$("#movements-vencimiento").prop("disabled", true); // Works.
$("#vencimientoDiv").prop("disabled", true) // Not works.

这是Yii2代码:
<div class="col col-md-4" id="vencimientoDiv">
    <?= $form->field($model, 'vencimiento')->widget(\common\widgets\DatePicker::className(), [
        'convertFormat' => true,
        'pluginOptions' => [
            'format' => 'dd/mm/yyyy',
            'autoclose' => true,
            'language' => 'es-AR',
            'todayHighlight' => 'true',
        ]
    ]) ?>
</div>

这是生成的 HTML 代码:
<div id="vencimientoDiv">
    <div class="form-group field-movements-vencimiento">
        <label class="control-label" for="movements-vencimiento">Vencimiento</label>
        <div class="input-group date">
            <span class="input-group-addon">
                <i class="fa fa-calendar"></i>
            </span>
            <input type="text" id="movements-vencimiento" class="form-control" name="Movements[vencimiento]" disabled="">
        </div>
        <div class="help-block"></div>
    </div>
</div>
2个回答

3
您需要的是 pointerEvents,它适用于所有元素,您可以在需要时禁用和启用点击操作。
以下是一个简单的演示:

$("#clicker").on('click', function(e) {
  e.preventDefault();
  alert("clicked");
});

$("#disab").on('click', function() {
  $("#clicker").css({
    pointerEvents: 'none'
  });
})

$("#enab").on('click', function() {
  $("#clicker").css({
    pointerEvents: 'auto'
  });
})
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<a href="#." id="clicker">click me</a>

<input type="button" value="Disable Click" id="disab">
<input type="button" value="enable Click" id="enab">

在您的情况下,您需要编写以下内容以禁用:
$("#vencimientoDiv").css({pointerEvents:'none'});

然后使用

重新启用。
$("#vencimientoDiv").css({pointerEvents:'auto'});

3
并没有 disabled 属性。您可以删除导致日历显示的事件处理程序,像这样:
$("#vencimientoDiv *").off();

就这么简单。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接