当用户提交参数不能正确转换时,怎么处理会比较好

问题描述

用struts2时,当使用表单时候的参数不能正确的转换成指定的类型的时候会转到 input 用asp.netMVC开发的时候,页面参数会自动和action方法的参数进行绑定,有一种情况:如果参数类型是int,而页面没有提交这个参数的时候就可能报错这种问题一般在调试的时候就能发现改正,想问下有没有更好的办法处理这个问题,尤其是ajax 提交的时候,谢谢! 问题补充:可能我描述的不是很清楚,问题是,在没进入action之前就报错了

解决方案

后台可台有一个统一的出错提示机制,并针对于访问方式的不同,返回不同的数据,比如如果是普通的网页访问,则直接显示定制的错误页面,如果是AJAX访问,则返回统一格式的JSON内容。你这边指的是没进action层就报错了,就可能是参数转换和装配的过程中出错的,这个时候就需要一个能拦截并处理此异常的机制,并渲染相应的结果。
解决方案二:
在没有进入action之前的 验证, 可以参考前端js验证的比如jquery的 validation验证框架
解决方案三:
如果是AJAX的话,那就容易很多了,因为用户的输入还是在的,后台直接提示相应的错误就可以了。如果是普通表单提交的话,最好的做法还是把用户输入的原样返回,让用户自己能看到自己输的是什么,当然,密码除外
解决方案四:
你是想在后台处理“页面没有提交这个参数”的情况么?

时间: 2024-12-04 06:58:49

当用户提交参数不能正确转换时,怎么处理会比较好的相关文章

asp.net中mvc使用ajax提交参数的匹配问题解决探讨

本文为大家介绍下使用javaScript解决asp.net中mvc使用ajax提交参数的匹配问题,遇到类似情况的朋友可以参考下,希望对大家有所帮助   想到在asp.net的mvc中如果使用ajax向服务端传递参数时如果参数是一个类或者是个数组(或List集合)以及更复杂的对象时,服务端总是会发 生取不到值的情况,当然网上也有很多解决的例子,但都是在服务端想办法来解决的(比如将json转换为字符串,再在服务端反序列化为一个对象),为何不能 在客户端就把这个问题搞定. 其实问题没那么复杂,那是因为

jquery如何把参数列严格转换成数组实现思路_jquery

如果某参数的列只有一个参数,那么each是失败,请看下面的例子 Java代码: 复制代码 代码如下: <!DOCTYPE html> <html> <head> <style> p { margin: 8px; font-size:16px; } .selected { color:red; } .highlight { background:yellow; } </style> <script src="http://code.

对象布局已知时 C++ 对象指针的转换时地址调整

在我调试和研究 netscape 系浏览器插件开发时,注意到了这个问题.即,在对象布局已知(即对象之间具有继承关系)时,不同类型对象的指针进行转换(不管是隐式的从下向上转换,还是强制的从上到下转换)时,编译器会根据对象布局对相应的指针的值进行调整.不管是 microsoft 的编译器,还是 gcc 编译器都会做这个动作,因为这和 C++ 对象模型有关.   举一个简单的例子,如下代码:   #include <stdio.h> class A { public: int x; void foo

输入值/表单提交参数过滤有效防止sql注入的方法

输入值/表单提交参数过滤可以有效防止sql注入或非法攻击,下面为大家介绍些不错的方法,感兴趣的不要错过 输入值/表单提交参数过滤,防止sql注入或非法攻击的方法:  复制代码 代码如下: /**  * 过滤sql与php文件操作的关键字  * @param string $string  * @return string  * @author zyb <zyb_icanplay@163.com>  */  private function filter_keyword( $string ) {

U盘无法复制文件解决方法 无法复制 参数不正确

无法复制 参数不正确的问题多发于向U盘.手机等移动存储器中复制文件时或复制过程中,出现类似情况可能是以下原因造成的: 第一种:移动磁盘没有足够的空间,举个例子,假如需要向U盘复制50M大小的文件,那么移动磁盘需要最少 100M的存储空间,因为多数U盘或可移动磁盘的标称容量与实际容量有出入,标称2G的U盘,实际上可存储空间只有1.8G或更少:典型症状为小文件可以 复制粘贴,但一旦文件偏大,比如超过200M的文件就无法复制: 第二种:可移动磁盘的分区表信息损坏,如没有安全删除硬件就直接拔掉U盘或木马

电脑复制文件提示错误0X80070057参数不正确怎么办

  复制文件提示错误0X80070057参数不正确的解决方法. 具体的解决方法如下: 1.使用USB数据线连接电脑,在我的电脑中发现的移动卡的盘上右击--->属性--->工具(如图). 2.单击查错一项-->开始检查,在弹出的窗口中一定要选中"自动修复文件系统错误和扫描并尝试恢复坏扇区"两个选项,点击开始查错,一般会根据不同手机内存卡的大小和存储内容的多少来确定所要检查时花的时间,我的卡4G用了2G多,花了近15分钟. 3.检查完后,可以看到"已发现一些问题

如何解决MindManager参数错误或参数不正确问题

  在使用MindManager思维导图模板时,如果出现类似如下提示,表示出现MindManager参数错误或者参数不正确问题.参数错误原因是什么?几个步骤帮你解决参数错误问题. MindManager参数错误原因 出现mindmanager 参数错误主要发生在应用其他模板时发生,然后软件自动关闭,无法使用.主要原因是因为使用了盗版或者破解软件或者汉化程序,使用正版软件将可解决,或者是引用模板时无法使用参数,如果仍旧存在可以参考如下步骤解决. MindManager参数错误解决方案 步骤一 首先

U盘无法复制文件参数不正确的原因

  无法复制 参数不正确的问题多发于向U盘.手机等移动存储器中复制文件时或复制过程中,出现类似情况可能是以下原因造成的(几率越高,排名越靠前): 移动磁盘没有足够的空间 举个例子,假如需要向U盘复制50M大小的文件,那么移动磁盘需要最少100M的存储空间,因为多数U盘或可移动磁盘的标称容量与实际容量有出入,标称2G的U盘,实际上可存储空间只有1.8G或更少;典型症状为小文件可以复制粘贴,但一旦文件偏大,比如超过200M的文件就无法复制; 可移动磁盘的分区表信息损坏 如没有安全删除硬件就直接拔掉U

浏览器-关于post无法提交参数

问题描述 关于post无法提交参数 现在碰到一个问题,项目上线后,出现个别电脑无法获得参数的问题.这边电脑都是一样配置的. 用get方式的话,当内容过长时无法提交,用post的话,提交的action对应页面无法获得属性. 用fiddler查看的,对应的action页面已经把参数值拿到了,但是request.getParameter得到的还是为空. 我想问下各位大神,这个是什么原因的,有说是抬头没设编码,后来设了,还是不行. 目前折中的方法时把一些java的放在attribute里,然后用get方