imgfrom.js
var f = new Ext.FormPanel({
id : 'f',
labelAlign : 'top',
frame : true,
modal : true,
url : path + 'upload/testUpload.action',
bodyStyle : 'padding:0 0 0',
width : 400,
imgfrom.js
var f = new Ext.FormPanel({
id : 'f',
labelAlign : 'top',
frame : true,
modal : true,
url : path + 'upload/testUpload.action',
bodyStyle : 'padding:0 0 0',
width : 400,
fileUpload : true,
items : [{
id : 'upload',
xtype : 'fileuploadfield',
fieldLabel : '商品图片上传',
textField : 'panel',
name : 'upload',
inputType : 'file'
}],
buttons : [{
text : '添加',
handler : function() {
if (f.getForm().isValid()) {
f.getForm().submit({
waitTitle : '请稍候',
waitMsg : '正在提交表单数据,请稍候...',
success : function(fr, actions) {
alert("dd");
alter(action.result.img);
Ext.getDom("_vipImg").src = path
+ "/images/userMobile"
+ action.result.img;
if (actions.result.success == true) {
Ext.MessageBox.alert("系统提示", "修改成功");
f.setVisible(false);
} else {
Ext.MessageBox.alert("系统提示", "连接超时");
}
}
})
}
}
}, {
text : '关闭',
handler : function() {
f.setVisible(false);
}
}]
});
var w = new Ext.Window({
id : 'addcW',
width : 300,
height : 200,
frame : true,
modal : true,
closeAction : 'hide',
title : '证件上传',
items : [f]
});
});
后台action
public String execute() throws Exception {
File[] srcFiles = this.getUpload();
List<String> successFileList=new ArrayList<String>();
// 处理每个要上传的文件
for (int i = 0; i < srcFiles.length; i++) {
// 根据服务器的文件保存地址和原文件名创建目录文件全路径
String dstPath = getRealyPath(getSavePath())
+ "\\" + this.getUploadFileName()[i];
File dstFile = new File(dstPath);
if(copy(srcFiles[i], dstFile)){
System.out.println(getUploadFileName()[i]);
successFileList.add(getUploadFileName()[i]);
}
}
getRequest().setAttribute("successFileList", successFileList);
commonality = "{success:true,img:"+getUploadFileName()[0]+"}";
return SUCCESS;
}
fileUpload : true,
items : [{
id : 'upload',
xtype : 'fileuploadfield',
fieldLabel : '商品图片上传',
textField : 'panel',
name : 'upload',
inputType : 'file'
}],
buttons : [{
text : '添加',
handler : function() {
if (f.getForm().isValid()) {
f.getForm().submit({
waitTitle : '请稍候',
waitMsg : '正在提交表单数据,请稍候...',
success : function(fr, actions) {
alert("dd");
alter(action.result.img);
Ext.getDom("_vipImg").src = path
+ "/images/userMobile"
+ action.result.img;
if (actions.result.success == true) {
Ext.MessageBox.alert("系统提示", "修改成功");
f.setVisible(false);
} else {
Ext.MessageBox.alert("系统提示", "连接超时");
}
}
})
}
}
}, {
text : '关闭',
handler : function() {
f.setVisible(false);
}
}]
});
var w = new Ext.Window({
id : 'addcW',
width : 300,
height : 200,
frame : true,
modal : true,
closeAction : 'hide',
title : '证件上传',
items : [f]
});
});
后台action
public String execute() throws Exception {
File[] srcFiles = this.getUpload();
List<String> successFileList=new ArrayList<String>();
// 处理每个要上传的文件
for (int i = 0; i < srcFiles.length; i++) {
// 根据服务器的文件保存地址和原文件名创建目录文件全路径
String dstPath = getRealyPath(getSavePath())
+ "\\" + this.getUploadFileName()[i];
File dstFile = new File(dstPath);
if(copy(srcFiles[i], dstFile)){
System.out.println(getUploadFileName()[i]);
successFileList.add(getUploadFileName()[i]);
}
}
getRequest().setAttribute("successFileList", successFileList);
commonality = "{success:true,img:"+getUploadFileName()[0]+"}";
return SUCCESS;
}
图片上传服务器没有问题.前台就是没有相应
success : function(fr, actions)
- 大小: 33.3 KB
分享到:
相关推荐
这里定义了一个必填的用户名字段,并设置了相应的提示信息。 3. **密码字段**: 与普通文本输入类似,但输入的字符会被隐藏,如`{xtype:"textfield", fieldLabel:"", id:"password", name:"password", inputType:'...
4. 处理响应:根据后端返回的结果(成功或失败),显示相应的消息或跳转到新的页面。 在EXT中,我们可以使用`Ext.Ajax.request`方法发送异步请求。例如: ```javascript Ext.Ajax.request({ url: 'login.php', //...
服务器端处理这个请求后,返回登录结果,最好以JSON格式返回,以便前端进行解析并显示相应提示。 **2. Ext.AJAX登录示例 - Ext.FormPanel** 与HTML form表单不同,EXTJS的Ext.FormPanel提供了一种更灵活的方式来...
这些监听器可以帮助我们捕捉用户的行为,并根据这些行为执行相应的代码。 ```javascript // 给按钮添加点击事件 Ext.get('myButton').on('click', function() { alert('Button clicked!'); }); ``` #### 使用...
柱状图是一种图形,用垂直或水平的矩形条表示数据类别和相应的数量。在Ext JS中,柱状图可以通过`Ext.chart.Chart`类创建,该类提供了丰富的定制选项,包括颜色、标签、轴和数据源等。 1. **创建图表容器**: 在...
4. **处理服务器返回结果**:当服务器返回数据时,通常会以JSON格式返回,因此需要解析这些数据并进行相应的业务逻辑处理。 ```javascript var result = Ext.util.JSON.decode(response.responseText); ``` ###...
服务器需要回应相应的`Access-Control-Allow-Methods`、`Access-Control-Allow-Headers`等头部信息。 4. 压缩包中的`domain.js`文件: 这个文件可能是用于处理跨域请求的核心代码,包含了设置CORS响应头、处理预检...
在 `success` 回调中,我们处理返回的 JSON 数据,并使用它来重新配置 `GridPanel`。 3. **解析 JSON 数据** `rs.responseText` 是从服务器返回的 JSON 字符串,我们使用 `Ext.util.JSON.decode` 将其转换为 ...
- `allowBlank` 和 `blankText`: 用于控制字段是否可以为空以及相应的错误提示。 - **表单提交**: - `simple.form.isValid()`: 验证表单的有效性。 - `Ext.MessageBox.show()`: 显示加载提示框。 - `setTimeout`...
9. `glyph`:使用Unicode字符作为图标,例如`glyph: 0xf055`,这将使用字体图标库中的相应字符。 10. `scale`:设置按钮的大小,可选'small'、'medium'、'large'。 11. `ui`:用户界面样式,影响按钮的视觉样式,...
success: function(response, opts) { // 请求成功后的处理逻辑 }, failure: function(response, opts) { // 请求失败后的处理逻辑 } }); ``` 如果你确实需要同步请求,可以尝试以下方法: 1. 使用`try......
// 验证成功,执行相应操作 } else { // 验证失败,提示用户 } }, failure: function(form, action) { // 提交失败,处理错误 } }); } ``` 4. **刷新验证码** - 为了提高用户体验,我们可以提供一个...
1. **数据加载与处理**:首先,我们需要在后端准备好相应的权限数据,并将其封装为JSON格式返回给前端。这一步可以通过API接口来实现。 2. **回调函数的使用**:在前端,我们可以使用`load`方法来加载数据,并指定...
- **安全**:确保服务器端有相应的验证机制,防止非法文件上传。 - **进度条**:如果可能,可以添加文件上传进度条以提升用户体验。 - **多文件上传**:如果支持HTML5,可以利用`multiple`属性让用户一次选择多个...
4. **回调函数**:开发者可以设置success、failure和complete回调函数,根据请求状态执行相应的代码逻辑。 5. **交易管理**:EXT Ajax库有内置的事务管理机制,可以跟踪并发请求,避免请求冲突和资源竞争。 6. **...
success: function(form, action) { // 成功登录后的处理 }, failure: function(form, action) { // 登录失败的处理 } }); } } }] ``` **2. 统一登录(Single Sign-On, SSO)** 统一登录是一种用户认证...
按钮的`action`属性将用于触发相应的处理函数。 2. **验证功能**:密码验证通常在用户提交表单时进行。在上述代码中,我们可以通过监听`action`事件来实现这一功能: ```javascript loginForm.getForm().on('submit...
if (action.result.success) { Ext.Msg.alert('成功', '数据已提交'); } else { Ext.Msg.alert('失败', action.result.message); } } } ``` 6. **显示 FormPanel**:最后,将 FormPanel 添加到页面的某个容器...
Ext.Msg.alert('Success', 'File uploaded successfully'); }, failure: function(fp, o) { Ext.Msg.alert('Failed', 'File upload failed'); } }); } }] }); ``` 上述代码创建了一个包含文件上传字段的...