我有一个剑道数字文本框。我已将Min值设置为1,Max值设置为31.如果我输入的值大于31,我想显示“值必须介于1和31之间”的错误消息。如果输入更大的值,小部件将将其四舍五入到最大值。因此,如果您使用键盘输入值50并从输入中失去焦点或保存表单,则该值将四舍五入为最大值31.
我希望当您在窗口小部件文本框中输入更大的值时,将显示一条错误消息。这是我的代码:
@(Html.Kendo().NumericTextBox<int>()
.Name("month_day_1")
.Format("#")
.Min(1)
.Max(31)
.Events(evnt => evnt.Change("Change"))
任何人都可以告诉我如何实现它。我试图将条件应用于kendo数字文本框的更改事件。但是我得到了错误,因为没有在控制台上定义更改。
这是我的javascript函数:
function Change(e) {
debugger;
var numerictextbox = $("#month_day_1").data("kendoNumericTextBox");
var value = numerictextbox.value();
if (value > 31) {
alert("Month Day value must be between 1 and 31");
return false;
}
}
)
答案 0 :(得分:0)
这应该完全符合你的需要:
@(Html.Kendo().NumericTextBox<int>()
.Name("month_day_1")
.Format("#")
.Min(1)
.Events(e => e.Change("ChangeInput"));
function ChangeInput(e) {
var value = this.value;
//This should work too
//Using jQuery --> to use, delete value = this.value and uncomment the line below
//var value = $("#month_day_1").val();
if (value > 31) {
alert("Month Day value must be between 1 and 31");
return false;
}
}
由于您处于由输入本身调用的事件中,因此关键字this
指的是输入。使用this.value
检索值应该有效。确保您的JavaScript在页面上并加载。