【问题标题】:Kendo UI for Angular: Kendo UI Datepicker disable typing/ only textbox sectionKendo UI for Angular:Kendo UI Datepicker 禁用输入/仅文本框部分
【发布时间】:2020-06-18 22:27:20
【问题描述】:

我正在尝试实现一个 Kendo UI Datepicker。日期值只能通过其按钮并从弹出窗口中选择日期来更改。如何防止用户在 Datepicker 文本框中输入内容?我可以在不禁用整个控件的情况下禁用文本框吗?

【问题讨论】:

标签: angular kendo-ui kendo-ui-angular2 kendo-datepicker


【解决方案1】:

正如我在 cmets 中已经提到的,您可以阻止用户仅使用 onkeydown="return false;" 在 Datepicker 文本框中输入内容。在这种情况下,用户仍然可以使用鼠标和/或箭头。

如果您确实想禁用控件的Datepicker 文本框“部分”,则必须以编程方式执行此操作,因为 [disabled]="true" 属性将禁用整个控件。

关键点如下:

html

<kendo-datepicker #datepicker [value]="value"></kendo-datepicker>

ts

this.datepickerRef.element.nativeElement.children[0].children[0].setAttribute('disabled', true);

我准备了一个演示。请看这里: https://stackblitz.com/edit/angular-rzcsdw?file=app/app.component.ts 让我知道这是否是所需的功能。

【讨论】:

    【解决方案2】:

    我晚了几年,但有一个指令可以用于此,readOnlyInput:

    &lt;kendo-datepicker [readOnlyInput]="true" [value]="value"&gt;

    https://www.telerik.com/kendo-angular-ui/components/dateinputs/datepicker/readonly-state/

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-12-17
      • 1970-01-01
      • 1970-01-01
      • 2017-12-03
      • 1970-01-01
      • 2017-10-02
      相关资源
      最近更新 更多