ユーザーが Kendo UI の Datepicker の値を変更するには、ボタンを押してポップアップから日付を選択する必要があります。ユーザーが Datepicker テキストボックスに入力できないようにするにはどうすればよいですか? コントロール全体を無効にせずにテキスト ボックスを無効にできますか?
11 に答える
入力要素に、この属性と値を追加します...
onkeydown="return false;"
これにより、タイプされた入力が無効になりますが、カレンダー コントロール入力の使用は引き続き許可されます。
以下のようにコントロールを使用します-
@(Html.Kendo().DatePicker()
.Name("FromDate")
.HtmlAttributes(onkeydown="javascript:return false;" })
)
キーボード入力を無効にします。他の条件も同様に処理できます。
Find your input element, and disable it
$('#datepicker').attr('disabled','disabled');
( tried it on the kendo demo website http://demos.kendoui.com/web/datepicker/index.html )
あなたは2つの方法でそれを行うことができます
//disable kendo ui datapicker click event
$(".k-datepicker input").bind('click dblclick',function () {
return false;
});
//make it readonly
$(".k-datepicker input").prop("readonly", true);
ユーザーが日付ピッカーに日付を入力するのを防ぎ、ポップアップから日付のみを選択する場合は、このコードを試してください
$(".k-datepicker").find('span').find('input').attr("readonly", "readonly");
もちろん、日付と時刻のピッカー ウィジェットには、キーボードではなく UI のみで入力を強制するオプションが必要です。フレームワークがこの明らかなユースケースに対して何も提供していないことに、私は非常に驚いています。
私は同じ必要があり、次のロジックを使用して機能させました。
$("#date").kendoDatePicker({
format: "dd MMMM yyyy"
});
$("#date").attr("readonly","readonly");
こうすることで、ユーザーはキーボードで値を入力できず、ドロップダウンの日付選択ウィンドウを使用して正しい形式の日付のみを入力できます。
実際、ウィジェットは、入力中にユーザーを制限しません。この動作の理由は次のとおりです: ウィジェットが入力を制限しない理由
このスレッドで共有されている他のすべてのソリューションと共に、ユーザーを特定の日付形式に制限するカスタムのマスクされた DatePicker を作成できます。詳細については、このハウツー デモを確認してください。
**これは組み込み機能として Kendo UI でサポートされていないことに注意してください。そのため、自己責任で使用する必要があります。良いニュースは、既知の副作用なしでかなりうまく機能することです.