【问题标题】:Kendo Popup Editor, validation error messageKendo Popup Editor,验证错误消息
【发布时间】:2018-01-11 10:13:56
【问题描述】:

我的剑道组有一个剑道弹出编辑器。

如果用户点击更新时出现验证错误,我想执行一个 jquery 操作。

我使用了 onSave 函数来做到这一点:

function onSave(e) {
        alert("you've clicked save")
}

但是,只有在字段上没有验证错误消息时才会调用该函数。当用户单击保存并且有验证消息时,如何引发函数。

谢谢

【问题讨论】:

  • 在 jsfiddle 上创建代码的工作演示并提供问题中的链接
  • 我不能,因为我使用 kendo for mvc 所以不能真正设置数据源
  • 仅供演示,您可以在jsfiddle.net/phpdeveloperrahul/p2xnxqf9这里修改此DEMO,以描述您的问题的方式
  • 你的演示是我目前所拥有的。但是,我只希望警报框显示屏幕上是否是验证错误。
  • 你有什么样的输入字段和验证规则?您可以修改上述DEMO并提供新的链接

标签: jquery validation kendo-ui kendo-grid kendo-validator


【解决方案1】:

我创建了这个DEMO

这个演示有:

  • 自定义弹出编辑器表单
  • 自定义 Kendo 验证器,用于验证表单上的自定义规则 字段
  • 检查表单中save event kendogrid 的有效数据
  • 在警报中显示验证错误错误消息并阻止表单提交

这里是sn-p的代码:

$("#grid").kendoGrid({
....
...
save: function(e) {
        alert('Popup form save event fired! Now validate the popup form for proper data');
      if (validateForm()) {//if form validation is successful
        alert("Form validation is successful");
        e.preventDefault();//This code line must be removed for successful form submission. It is kept here only for demonstration purpose
      }
      else {
        //Form validation failed
        e.preventDefault();//So prevent form submission
      }
    }
....
...

function validateForm()
{
    var validator = $("#popupForm").kendoValidator({
    rules: {
        minlength: function(input) {
        //only address will be validated
        if (input.is("[name=address]")) {
          if (input.val().length < 4)
            return false;
        }
        return true;
      },
      checkcity: function(input) {
        //only city will be validated
        if (input.is("[name=city]")) {
          if (input.val() != "ABC")
            return false;
        }
        return true;
      }
    },
    messages: {
        minlength: "Min length required is 4",
      checkcity: "City name must be ABC"
    }
  }).data("kendoValidator");

  if (validator.validate()) {
    return true;
  } 
  else {
    alert("Oops! There is invalid data in the form.\n"+validator.errors());
    return false;
  }

}

【讨论】:

  • 谢谢,但这似乎不起作用。我没有将 Kendo 用于 jQuery,而是用于 MVC,所以我的网格使用的是 Razor 引擎
  • 这就是为什么我要求你展示你的代码。您在问题中提到了有关 Razor 的任何内容。您应该描述您的问题,以免像我这样的帮助者被误导。
  • 请考虑为我迄今为止所付出的努力 +1
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2010-10-25
  • 2017-03-22
  • 2018-12-10
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多