为什么单击提交时kendoForm会两次触发?

时间:2020-07-09 21:35:58

标签: kendo-ui

如果在使用setOptions设置domReady之后在kendoForm中设置了formData,则只需单击一下即可提交两次发射。

form.setOptions({
 formData : { ID: 2, Name: "Tom", Address: "Berlin" }
});

我的示例代码:kendoForm example

首先按下“提交”按钮=>“提交射击”。

第二次按下添加FormData按钮,然后按下Submit =>两次提交激发。

在setOptions提交后引发两次错误是什么?

1 个答案:

答案 0 :(得分:1)

所描述的行为与此处记录的表单中的已知问题有关:

https://github.com/telerik/kendo-ui-core/issues/5854

作为临时的解决方法,直到正式解决此问题为止,您可以使用_setEvents函数,如下所示:

<script>
        kendo.ui.Form.fn._setEvents = function() {
          var that = this,
              validator = that.validator;

          validator
            .bind("validateInput", $.proxy(that._validateField, that))
            .bind("validate", $.proxy(that._validate, that));

          that.wrapper
            .on("submit.kendoForm", $.proxy(that._submit, that))
            .on("clear.kendoForm", $.proxy(that._clear, that))
            .on("click.kendoForm", ".k-form-clear", $.proxy(that._clear, that));

          that._model.bind("change", $.proxy(that._change, that));
        }
      </script>

Here is a working Dojo example为方便起见。