form表单如何取得返回值

因为是文件上传,所以不可以用ajax,也无法用formdata的append方法,更无法创建formdata时指定form。上传的java方法是调用其他接口,代码不允许改... 因为是文件上传,所以不可以用ajax,也无法用formdata的append方法,更无法创建formdata时指定form。上传的java方法是调用其他接口,代码不允许改。只能改本地上传的js文件。
现在其他浏览器都可以用formdata的append上传,然后获取到服务器的状态。
但是IE9无法使用该方法,因为上传文件的JAVA方法不允许修改,上传也要带参数,所以无法使用ajaxfileupload.js,只能直接document.form.submit()。这时候,我需要取得服务器返回的值,请问怎么获取?
或者有什么其他的方案也可以提出来。
我是希望获取到服务器的状态,比如已经上传完毕了,已经可以不跳转到别的页面了。
展开
 我来答
滟丽00
高粉答主

2019-08-15 · 繁杂信息太多,你要学会辨别
知道答主
回答量:1487
采纳率:0%
帮助的人:24.5万
展开全部

1、首先需要创建asp.net mvc的空项目MVCForm。

2、在Models文件夹下面添加一个类文件Employee,用于form表单中字段绑定与提交,其中涉及到int、string、bool多种类型的字段。

3、在Controllers文件夹下面添加一个HomeController,用于接收与处理页面请求,此时就直接添加一个控制器即可,默认就有Index Action。

4、在HomeController的Index方法中点击右键,添加视图,会自动生成与Action相同名字的页面。

5、在Index页面中添加Form表单,包含Models文件夹下Employee实体的所有字段,同时,添加一个提交form的按钮。

6、在HomeController中添加一个用于接收页面form参数的方法。

7、调试模式下运行效果如下,页面表单数据都提交到了Controller中且取的返回值

百度网友9d5599fb8
推荐于2017-11-21 · 超过14用户采纳过TA的回答
知道答主
回答量:40
采纳率:0%
帮助的人:23.9万
展开全部
你要兼容到小于等于IE9的话,最好是用form+iFrame来完成。提交form的时候界面会跳转,所以把界面跳转指向iFrame,这样表单提交了,跳转的只是iFrame里面的内容,把iFrame隐藏掉,就像异步提交一样(实际上不是异步,是伪装的)。你上传带的参数有哪些?调用java保存文件的接口时是不是使用一个URL,比如url:"upload.do"?
更多追问追答
追问
不是,我form设置onsubmit="return false"也可以让它不跳转。我要的是读取到服务器的状态,知道服务器已经处理完上传请求了,才可以进行下一步操作。
追答
form+iframe是可以读取服务器状态的。表单一但提交,服务器就会处理请求,处理完请求之后,就会把返回值放到iframe中,iframe就会跳转,但是你本身的页面是不会跳转的。相当于一个异步请求。你给iframe加上onload事件,一旦这个事件触发,就表示服务端把你的请求处理完毕了,本来是要跳转页面的,但是因为有iframe的存在,页面不会跳转,跳转的只是iframe,把他隐藏,就完全没有影响。你进行下一步动作就行了。
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式