form表单中,在action属性中利用el表达式提交到action的save()或者update()方法 出错了
<formaction="/bbsdir.do?method="+"${bbsdir==null?'save':'update'}"method="post">bbsdi...
<form action="/bbsdir.do?method="+"${bbsdir==null?'save':'update' }" method="post"> bbsdir 是一个对象 我提交后地址栏变为http://localhost/bbsdir.do?method=
各位高手可以帮我弄成地址栏变为 http://localhost/bbsdir.do?method=update 吗? 展开
各位高手可以帮我弄成地址栏变为 http://localhost/bbsdir.do?method=update 吗? 展开
3个回答
展开全部
不太懂, 你有两个地方有问题
html 不能拼接字符串 action="/bbsdir.do?method=${bbsdir==null?'save':'update'}" 写成这样就好
2. 既然你是用的post方法, 那你在url后面的数据应该收不到, 你这样拼接在请求行的数据只有get方法传送才收到, 而post方法是在请求体中传送
追问
我现在基本上理解你的意思,那么请问我如果用post方法,应该如何才能实现根据对象bbsdir是否为空 提交到action的save或者update方法呢?顺便说一下这个是我的编辑页面 再问2个问题
1 jsp里面可以拼接字符串吗?(我试过好像也不可以 要在 jsp标签里面吧)2 el表达式究竟返回的是什么东西啊 字符串? 拜托了,必有重谢
追答
用post 方法, 你要传送这种判定或者不要显示的数据, 要用隐藏域传送
在你的form里的任一位置 写一个
这样就能在servlet接收到了
1. jsp 可以拼接的,只是你要分清是HTML文本还是java的字符串
JAVA 的就要把字符串都写在引号里
而html里的一个普通文本 有没有引号, 只要能传送数据到java 它也是字符串
2. el 表达式 可以接收 你在web服务器作用域内存储的任何数据, 只是它的整体基本都被当作html的一个value值也就是java的字符串, 注意的是,你存储的是字符串就可以直接用, 存储的是对象取到的就是对象, 你要用其实的属性就要时行 转换 ${存储名.属性名} 就能得到相应的值
展开全部
地址栏变成你需要的,要使用get方式提交表单。get方式提交表单地址栏会变成提交的地址,而post的提交表单地址栏保持不变。还有你的<form>应写为:
<form action="/bbsdir.do?method=${bbsdir==null?'save':'update' }" method="get">
<form action="/bbsdir.do?method=${bbsdir==null?'save':'update' }" method="get">
追问
这样的确可以,我昨天就整好了,问一下啊,如果我一定要用post提交方式,应该怎么写呢
追答
post提交就把method写成post就行了。get和post请求是一样的,只是地址栏地址有无变化。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
应该改为:<form action="/bbsdir.do?method=${bbsdir==null?'save':'update' }" method="post">
更多追问追答
追问
兄弟,这样不行的,我昨天试过
追答
哦 是method="get"。如果你用post,那么就写在隐藏域中,做下判断就行
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询