javascript - Kendo html有界表单重置
问题描述
我正在尝试在使用可观察对象的按钮单击时重置 html 有界表单 viewModel,但在重置(html 重置)之后,它不允许输入表单以在单击时提取新数据。
工作流程:我有一个表单,用户输入一个 id 并单击一个按钮,远程数据源将数据拉入表单。加载数据后,用户会单击清除(重置)按钮以加载空白表单以搜索另一个 id 以加载新数据,但是在清除(重置)之后,它不允许表单检索新数据。
模型
var formModel = kendo.data.Model.define({
id: "investigation_id",
...
});
数据源
var formSource = new kendo.data.DataSource({
... });
可观察的
var form = kendo.observable({
dataSource: formSource,
forms: new formModel(),
standard_ind: 0, change_type: 0,
resolution_type: 0,resolution_sub_type: 0,
getstd: function(){ return this.get("standard_ind"); },
getchg: function(){ return this.get("change_type"); },
getrestype: function(){ return this.get("resolution_type"); },
getresstype: function(){ return this.get("resolution_sub_type"); },
...
goReset: function(){
invReset();
}
kendo.bind($("#triage_form"), form);
function invReset(){
$('#sr_error_message').text('').fadeOut();
$('#subform').hide();$('#upd').hide();$('#save').show();
newModel = new formModel();
form.dataSource.data(newModel);
console.log("reset form",form.forms);
$('#sr_number').focus();
};
解决方案
我使用 JS .reset() 再次加载数据以再次加载空白 observable 并且表单现在正在正确重置。
...
document.getElementById("triage_form").reset();
getdata(); ;initiates blank model
...
推荐阅读
- angular - 如何使用数据表单从 ionic Angular 应用程序将文件发送到 laravel 服务器?
- swift - 如何在列表中使用 date 和 dateFormatter?
- html - div flex 拉伸不应用并且不改变高度
- r - R API 中的授权,专门用于英雄联盟
- python - Python将值保存为实例方法而不是整数
- python - 动态构建大型数据框(spark 或 pandas)以导出到 csv 的方法
- python - 在 VBA 中使用变量作为函数参数,特别是 Cells() 函数
- python - 在txt文档中搜索单词,python
- c++ - C++ 问题:用户思考一个数字 1-100,程序提出问题不超过 6 次以获得答案。无法正确
- python - 如何在 tkinter 中删除弹出窗口?