Extjs 前台form提交 到后台后模型中某字段莫名其妙多了个逗号','
时间: 2024-01-13 15:05:50 浏览: 31
可能是因为前台提交的数据中有逗号(,),导致后台解析数据时将逗号当作了分隔符,从而造成某个字段的值多了一个逗号的情况。
解决方案可以考虑以下几点:
1. 对提交的数据进行合法性检查,过滤掉不符合要求的字符,例如逗号(,)。
2. 在前台提交数据时,将数据进行编码,例如使用encodeURIComponent函数进行编码,避免特殊字符对数据的影响。
3. 在后台接收数据时,对数据进行严格的解析和处理,避免出现数据格式错误的情况,例如使用JSON.parse函数解析JSON格式的数据。
希望以上解答能够帮到您,如有不懂之处,请随时追问。
相关问题
Extjs form 提交
ExtJS 提交表单的方式有多种,其中比较常用的方式是使用 Ext.form.Panel 的 submit 方法来提交表单数据。以下是一个示例代码:
```javascript
Ext.create('Ext.form.Panel', {
title: 'My Form',
width: 300,
height: 200,
bodyPadding: 10,
renderTo: Ext.getBody(),
items: [{
xtype: 'textfield',
name: 'name',
fieldLabel: 'Name'
}, {
xtype: 'textfield',
name: 'email',
fieldLabel: 'Email'
}],
buttons: [{
text: 'Submit',
handler: function() {
var form = this.up('form').getForm();
if (form.isValid()) {
form.submit({
url: 'submit.php', // 提交到的 URL 地址
success: function(form, action) {
Ext.Msg.alert('Success', action.result.msg);
},
failure: function(form, action) {
Ext.Msg.alert('Failed', action.result.msg);
}
});
}
}
}]
});
```
在上述代码中,我们创建了一个 Ext.form.Panel,并添加了两个文本框作为表单项。按钮的点击事件中,通过 `getForm()` 方法获取表单实例,然后调用 `submit` 方法提交表单数据。在 `submit` 方法的配置项中,需要指定提交的 URL 地址,以及成功和失败的回调函数。成功时会弹出一个成功提示框,失败时会弹出一个失败提示框。
请根据你的具体需求修改代码中的表单项、URL 地址和回调函数。
extjs4.2 Form表单 提交
提交 ExtJS 4.2 Form表单有两种方式:通过表单的submit()方法提交和通过Ajax请求提交。
1. 通过表单的submit()方法提交
```
Ext.getCmp('formId').submit({
url: 'yourUrl',
method: 'POST',
success: function(form, action) {
// 成功后的操作
},
failure: function(form, action) {
// 失败后的操作
}
});
```
2. 通过Ajax请求提交
```
Ext.Ajax.request({
url: 'yourUrl',
method: 'POST',
params: Ext.getCmp('formId').getValues(),
success: function(response) {
// 成功后的操作
},
failure: function(response) {
// 失败后的操作
}
});
```
其中,`Ext.getCmp('formId').getValues()` 方法可以获取表单的所有值,也可以通过 `Ext.getCmp('formId').getForm().getValues()` 方法获取表单的所有值。在提交表单时,需要设置提交的URL和提交方式,提交成功后执行success回调函数,失败后执行failure回调函数。