-
如何从 form 取值以及如何取得 combo 组件的默认值5
如上图是一个 combo 组件,定义如下{ fieldLabel: '性质', id: 'kind', name: 'kind', xtype: 'combo', mode: 'local', triggerAction: 'all', store: new Ext.data.SimpleStore({ fields: ['kind'], data: [['商业'], ['其他']] }), displayField: 'kind', valueField: 'kind', emptyText: '商业', editable: false, lazyInit: false, typeAhead: true, selectOnFocus: true, valueNotFoundText: '商业', value: proj.kind }
当然,为了取值,我加了很多不必要的属性。
我需要在浏览器端把 formPanle 中的元素取出来,组织成一个 XML 字符串。使用如下代码:for (var i = 0, fld; fld = fm.findField(i); i++) { alert(fld.id+" = '"+document.getElementById(fld.id).value+"|"+fld.getValue()+"'"); }
我希望如果用户不操作上面那个 combo,就使用默认值“商业”,但是使用 EXT 的方法 fld.getValue() 得到的是空值,而 js 方法 document.getElementById(fld.id).value 能够得到默认值“商业”。
请问正确的设计应该如何获取?
BTW:
proj.kind 是返回的对象,可能为空,而我的要求就是为空的时候就取默认值。
另外,我还有一个 datefield 组件,定义如下:{ id: 'INDATE', name: 'INDATE', xtype: 'datefield', format: 'Y-m-d', value: new Date() }
我用 EXT 方法 fld.getValue() 得到的是 Thu Jul 30 2009 00:00:00 GMT+0800,而 js 方法得到的才是我想要的 2009-07-30
请知道如何做的朋友不吝指教,谢谢~!
问题补充:引用fld.getValue() == null ? "商业":fld.getValue()
不行,因为必须要设计得具有通用性。在那个接口方法中必须要处理很多业务的 form,而且,还必须要多未来的业务响应。
暂时就用 js 方法了,有问题再来看。不过继续期待更好的解决方法
问题补充:
感谢大家!都或多或少有帮助,虽然分少,但不知道如何让大家平分,就选一个吧。
昨晚仔细看了 api,最终的方法如下,希望对后来者有所帮助,如果大家还有更好的方法,可以直接站内联系我,谢谢。fm.getForm().setValues(proj); var flds = fm.getForm().getValues(); for (key in flds) { alert(key + " = '" + flds[key] + "'"); }
2009年7月30日 15:07
4个答案 按时间排序 按投票排序
-
采纳的答案
你的combo选项只有[['商业'], ['其他']],没有这2个选项对应的value吗?
我没怎么明白你想要做什么,你可以看一下我的combo的使用,希望对你有帮助var myCombo= new Ext.form.ComboBox({ store: [['','--Select--'],['1','Enable'],['0','Disable']], hiddenName: 'status', mode: 'local', forceSelection: true, editable: false, triggerAction: 'all', lazyInit: false, lazyRender: true, autoShow: true, allowBlank: true, fieldLabel: 'Status', anchor: '90%' }); var selectValue = myCombo.getValue();//得到当前选中选项对应的value //例如:‘’,‘0’,‘1’ var rawValue = myCombo.getRawValue();//得到当前选中的字符串 //例如:'--Select--','Enable' //想初始显示时让某个值被选中的话用如下方法 myCombo.setValue('1');//将使得'Enable'被选中
另外,时间字段的取值用rawvalue{ id: 'INDATE', name: 'INDATE', xtype: 'datefield', format: 'Y-m-d', value: new Date() } var dateValue = Ext.getCmp('INDATE').getRawValue();
2009年7月30日 17:01
-
引用我用 EXT 方法 fld.getValue() 得到的是 Thu Jul 30 2009 00:00:00 GMT+0800,而 js 方法得到的才是我想要的 2009-07-30
请知道如何做的朋友不吝指教
fld.getValue()得到的是Date类型的,
你要得到2009-07-30有两种方式:
1. fld.getValue().format('Y-m-d')
2.fld.getRawValue()2009年7月30日 17:09
相关推荐
在本文中,我们将深入探讨`laravel-admin`框架中的`Form`表单多功能列表组件`MultiList`。这个自定义插件是专为`laravel-admin`设计的,旨在提供一种创新的方式,将传统的`grid`表格样式与`form`表单控件相结合,...
该组件仿造laravel-admin form表单自带的tab组件。 区别在于laravel-admin自带的tab标签切换组件只能出现form表单的顶部所有的输入只能在tab标签内; 而该组件允许tab标签切换在form表单的任何位置,与代码顺序相关...
本话题聚焦于“基于antd4二次封装的form组件”,这通常意味着开发者为了满足特定项目需求,对antd提供的Form组件进行了功能扩展或定制。 Form组件在antd中扮演着数据收集与验证的重要角色,它与Input、Select等控件...
3. `combo`:`Ext.form.ComboBox`是下拉列表框组件,允许用户在预设的选项中进行选择,同时可以提供搜索功能以便快速定位选项。 4. `datefield`:`Ext.form.DateField`是日期选择组件,用户可以通过日历控件选择...
补充知识:Ant Design Pro,用setFieldsValue方法,给嵌套到Form表单中的DatePicker或RangePicker组件设置默认值 其实用setFieldsValue或者获取setState方法都可以设置DatePicker的默认值。 但是关键点在于,引用...
表单(Form)是 Laravel-admin 中的核心部分,它支持多种表单元素,包括文本输入、下拉选择、复选框等,以及自定义组件。 `multiCheckbox` 组件是一个专为 Laravel-admin 设计的多级下拉复选框,适用于处理层级结构...
该资源是一个针对C#开发者的实用工具包,旨在提供一套通用的Win-Form和Web-Form界面组件。通过使用此类库,开发者可以为桌面应用(Win-Form)和Web应用(Web-Form)创建一致的用户体验,无论是在客户端还是在服务器...
在给定的文件中,展示了如何利用Element UI库来封装`el-table`和`el-form`组件,这两个组件在管理系统的界面中非常常见,特别是用于数据展示和表单提交。 首先,我们关注`el-form`组件的封装。`el-form`用于创建...
在本例中,请求的URL是`TeamMg_deleteContactManagement.action`,数据类型设置为`json`,并且传递了`form`变量作为请求数据。 ```javascript $.ajax({ type: "POST", url: "TeamMg_deleteContactManagement....
本文将详细介绍C++Builder 6 中一些常用的组件及其使用方法,包括Form窗体组件、常用组件、公用对话框组件、Timer组件以及组件的焦点事件和使用技巧。 #### Form窗体组件 **1.1 生成Form窗体** C++Builder 提供了...
本文将深入探讨如何利用Element UI的Form表单组件构建一个高拓展性的表格布局组件。 首先,Element UI的Form组件提供了强大的表单处理能力,它支持各种表单元素如Input、Select、Checkbox、Radio等,并且具有表单...
为了在表单中使用这个组件,你需要在 Laravel-Admin 的 Form 中调用 `checkboxTree` 方法,传入需要展示的数据源和配置项。例如: ```php $form->checkboxTree('permissions', '权限分配')->options($...
`proForm`组件支持远程搜索功能,这是通过设置`options`中的`filterable`、`remote`以及`remoteMethod`属性实现的。`remoteMethod`接受三个参数:`query`(当前输入框的值)、`form`(表单实例)和`callback`(返回...
标题中的“多文件上传 dojo组件 dojox.form.FileUploader”是指使用Dojo JavaScript库中的dojox.form.FileUploader组件来实现网页上的多文件上传功能。Dojo是一个强大的JavaScript框架,它提供了丰富的UI组件和工具...
使用form-create动态生成vue自定义组件和嵌套表单组件 [github]| [说明文档] maker.create 通过建立一个虚拟 DOM的方式生成自定义组件 生成 Maker let rule = [ formCreate.maker.create('i-button').props({ ...
"文本框设置默认值、验证以及提交"这一主题涵盖了三个关键环节:为文本框预填充默认值,实现输入验证,以及处理表单提交。这些功能在jQuery库的帮助下可以轻松实现,jQuery是一个广泛使用的JavaScript库,简化了DOM...
在easyBPM表单设计器中,新增一个日期时间组件涉及到对组件的注册、配置属性的设置、前端组件描述的编写以及对表单设计的整体把握。用户需要熟悉表单设计器的各个部分,了解如何通过编程接口和前端描述来定制组件,...
- **自定义属性**:`__config__`和`__slot__`是`form-generator`自定义的属性,用于描述组件的配置和插槽信息。 - **插槽解析**:通过自定义的插槽解析文件(如`el-button.js`)来实现组件内容的动态展示。 - **组件...
Laravel表单组件 一组Blade组件,可使用 , 和快速构建表单。 支持验证,模型绑定,默认值,转换,包括默认的供应商样式和完全可定制的!... :eyes: 该软件包有一个Pro版本正在开发中:检出 ! :television: 想要...