问题重现:修改不会有问题,id会绑定之前的grid,有具体数字

添加有问题,因为id是空,传的是绑定值的话会显示“类名-1”,从int类型变成了string类型,后台会出错

这是EduQuestionBankForm的代码

/**
* @author cjy
* @Date 2018/6/2 15:06.
*/
Ext.define('Admin.view.eduQuestionBank.EduQuestionBankForm', {
extend: 'Ext.window.Window',
xtype: 'eduQuestionBankForm', title: '题库添加',
requires: [
'Admin.view.eduQuestionBank.EduQuestionBankFormController',
'Ext.form.Panel',
'Ext.form.field.ComboBox',
'Ext.form.field.Text',
'Ext.form.field.TextArea',
'Ext.layout.container.Fit'
], layout: 'fit', modal: true,
height: 440,
width: 500, controller: 'eduQuestionBankForm', viewModel: {
links: {
theEduQuestionBank: {
type: 'eduQuestionBank.EduQuestionBank',
create: true
}
},
data: {
roleComboQueryMode: 'remote'
}
}, items: {
xtype: 'form',
id:'dictionaryF',
modelValidation: true,
defaults: {
labelAlign: 'left',
margin: 10,
msgTarget: 'side'
},
items: [{
xtype:'hidden',
name:'id',
id :'hiddenEduQuestionBankId',
bind:{
value:'{theEduQuestionBank.id}'
}
},{
xtype: 'textfield',
name: 'title',
allowBlank:false,
fieldLabel: '题库名称',
bind: {
value: '{theEduQuestionBank.title}'
}
}, {
xtype: 'textfield',
name: 'postType',
fieldLabel: '对应岗位',
allowBlank:false,
bind: '{theEduQuestionBank.postType}'
}, {
xtype: 'textfield',
name: 'createUserId',
fieldLabel: '创建人',
allowBlank:false,
bind: '{theEduQuestionBank.createUserId}'
}],
buttons: [{
text: '确定',
handler: 'editEduQuestionBank'
}, {
text: '取消',
handler: 'closeEduQuestionBankWindow'
}]
}
});

解决方案:

正则判断是否是数字,是数字则找到id或者name的地方,将其禁用,就不会再向后台发送参数了

var reg =  /^\d+$/;
if (!reg.test(form.form.findField('hiddenEduQuestionBankId').getValue())) {
form.form.findField('hiddenEduQuestionBankId').setDisabled(true);
}

ExtJs6解决添加和修改Form共用一个form的隐藏域的id的取消传值的更多相关文章

  1. 使用jstl el表达式对form表单的功能进行区分 比如新建和修改共用一个form

    新建一个专栏,修改这个专栏信息 完全可以做在一个jsp的一个form中 但是,需要注意的是,使用mvc的对象属性自动封装的话 如果id为空,将会报错,无法进入controller中的 所以要在页面上判 ...

  2. 数据表格,查询、导出共用一个form表单,实现文件流方式下载

    在开发中遇到问题是这样的: 在维护老的管理系统的过程中,老板说让加导出功能:项目中,查询的筛选条件是用的表单提交的方式写的. 解决方案有两种: 一.用ajax方式导出 var array = $('# ...

  3. 解决vue多个路由共用一个页面的问题

    在日常的vue开发中我们可能会遇见多个路由需要共用一个页面的需求,特别是当路由是通过动态添加的,不同的路由展示的东西只是数据不同其他没有变化.例如: ? 1 2 3 4 5 6 7 8 9 10 11 ...

  4. mysql查询一个表的字段,添加或修改到另外一个表的数据

    DELIMITER $$ USE `topsale`$$ DROP PROCEDURE IF EXISTS `sale_proce`$$ CREATE DEFINER=`root`@`%` PROCE ...

  5. stark组件之添加、修改页面内容搭建(七)

    如何快速的进行数据的添加以及修改呢?modelform来实现是可以达到效果的,在这里就是应用了modelform,每一个表都不同,所以需要创建不同的modelform. def get_model_f ...

  6. ExtJS 4.2 业务开发(三)数据添加和修改

    接上面的船舶管理业务,这里介绍添加和修改操作. 目录 1. 添加操作 2. 修改操作 3. 在线演示 1. 添加操作 1.1 创建AddShipWindow.js 在业务中的view目录下创建一个Ad ...

  7. MVC5 网站开发之八 栏目功能 添加、修改和删除

    本次实现栏目的浏览.添加.修改和删除. 栏目一共有三种类型. 常规栏目-可以添加子栏目,也可以添加内容模型.当不选择内容模型时,不能添加内容. 单页栏目-栏目只有一个页面,可以设置视图. 链接栏目-栏 ...

  8. Jquery EasyUI的添加,修改,删除,查询等基本操作介绍

    http://www.jb51.net/article/42016.htm 初识Jquery EasyUI看了一些博主用其开发出来的项目,页面很炫,感觉功能挺强大,效果也挺不错,最近一直想系统学习一套 ...

  9. IIS环境下如何批量添加、修改、删除绑定的域名

    IIS环境下如何批量添加和修改所绑定域名 1.关闭IISADMIN服务和W3SVC服务,可以从服务里面关闭,也可以直接执行命令:net stop iisadmin /y: 2.打开“C:\WINDOW ...

随机推荐

  1. 使用 dlv 调试go 程序

    目录 使用 dlv 调试smartraiden 一 正常启动 smartraiden 二 dlv 调试 三 dlv attach 使用 dlv 调试smartraiden by 白振轩 使用 dlv ...

  2. UI Automator Viewer的使用

    uiautomatorviewer是android SDK自带的工具.通过截屏并分析XML布局文件的方式,为用户提供控件信息查看服务.该工具位于SDK目录下的tools\bin子目录下.可以看到,它是 ...

  3. 事件委托,元素节点操作,todolist计划列表实例

    一. 事件委托 事件委托就是利用冒泡的原理,把事件加到父级上,来代替子集执行相应的操作,事件委托首先可以极大减少事件绑定次数,提高性能:其次可以让新加入的子元素也可以拥有相同的操作. 比如有20个&l ...

  4. xshell连接centos虚拟机的几点注意

    我家用电脑使用联通的宽带,使用virtualbox装了centos6,连接方式使用NAT网络,还有一个是网络地址转换(NAT),不清楚区别是什么,使用xshell连接 当使用cd /etc/sysco ...

  5. springBoot 实现中文国际化

    一:实现效果如下: 二 SpringBoot 国际化配置 1.创建国际化配置文件(3个): messages.properties messages.user.name=用户名 messages.us ...

  6. Linux Mint下FireFox安装Adobe Flash Player

    最近在为自己的家里一台很老的机子(由于微软不再支持windows,windows10什么的不是这个老机子可以带的起来的233)选择一个合适的linux系统安装.看来看去,最终选择了排行很靠前,感觉也不 ...

  7. js高级程序设计 笔记 --- 表单

    一,基础知识 在html中,表单是form元素,而在js中,表单对应的是HTMLFormElement类型,继承自HTMLElement,其独特的属性和方法有(常见): action:接收请求的URL ...

  8. Windbg双机调试环境配置(Windows7/Windows XP+VirtualBox/VMware+WDK7600)

    简介:Windbg双机调试内核.驱动 下载软件: 下载Windbg(GRMWDK_EN_7600_1.ISO) 下载VirtualBox 5.2/VMware 12 一.安装WDK,这里要提一点的是D ...

  9. awk练习

    首先,了解awk的运行格式 awk '条件类型1{动作1} 条件类型2{动作2} ...'  filename 1. [root@server3 mnt]# cat passwd root x 0 0 ...

  10. Python——制作模块

    步骤一:创建包 步骤二:编辑示例模块代码 __init__调用: 步骤三:创建setup.py from distutils.core import setup setup(name="pa ...