input标签中使用disabled这个属性导致传参失败等问题

问题一:之前遇到过input标签中使用disabled这个属性导致传参失败的问题,由于当时没有总结,致使现在又弄了老半天才发现。

<div class="formtitle"><span>修改问题选项</span></div>
    <form action="${path }/msgController/msgItemsModify" method="post">
    <input type="hidden" name="stage" value="${specifiedQuestion.stage }">
    <ul class="forminfo">
	<li><label>stage</label><input name="stage" value="${specifiedQuestion.stage }" type="text" class="dfinput" disabled="disabled"/></li>
    <li><label>no</label><input name="id" value="${specifiedQuestion.id }" type="text" class="dfinput" disabled="disabled"/></li>
    <li><label>items</label>
    <textarea name="content" class="textinput">${specifiedQuestion.content }</textarea>
     ......
    </ul>
    </form>
在后台,我们获取通过input标签中的name属性获得该文本域的value值:

@RequestMapping("/msgModifyUi")
	public String msgModifyUi(String stage,Model model){
		System.out.println("msgModifyUi,stage:"+stage);
当我们如第一段代码中,使用了disabled的属性,导致我们的stage没有值。所以我们加了一个没有disabled的属性的隐藏域来进行传参。
问题二:

表单中使用get方式提交会导致后台接收的中文数据出现乱码,即使在web.xml中配置了编码过滤器:

<!-- 编码过滤器,解决中文乱码 -->
	<filter>
		<filter-name>SpringEncoding</filter-name>
		<filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
		<init-param>
			<param-name>encoding</param-name>
			<param-value>utf-8</param-value>
		</init-param>
	</filter>
	<filter-mapping>
		<filter-name>SpringEncoding</filter-name>
		<url-pattern>/*</url-pattern>
	</filter-mapping>
所以,我们的form表单应该尽量使用post方式提交或者你在后台对中文数据进行编码处理。

问题三:

今天在发布项目之后,访问时浏览器访问一直在转圈,出不来页面。原因是因为我在使用shiro进行验证时,在spring的配置文件中:

<property name="filterChainDefinitions">
	<value>
	.........
        	<!-- authc需要认证(登陆)才能使用 -->
	        /** = authc
	</value>
</property>
配置了/**对所有的方法都需要认证,所以才会出现这类现象。

解决办法:可以这样写:/*.action*,表示对以action结尾的方法才进行认证。



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值