社区
Java EE
帖子详情
form表单中action绝对路径/现对路径
yao_ge
2009-11-22 09:23:12
是这样的:
比如我现在在webroot中有个index.jsp 在index.jsp中写个表单。
现在在webroot中有个sub文件夹,sub文件夹中有个submit.jsp想得到index.jsp表单的数据
index.jsp
<form action="????这边要怎么写才才能指向submit.jsp" method="post">
数据
</form>
...全文
39928
22
打赏
收藏
form表单中action绝对路径/现对路径
是这样的: 比如我现在在webroot中有个index.jsp 在index.jsp中写个表单。 现在在webroot中有个sub文件夹,sub文件夹中有个submit.jsp想得到index.jsp表单的数据 index.jsp 数据
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
22 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
D0_0L
2011-08-03
打赏
举报
回复
其实个人感觉18楼的方法最好!
wys8435c
2010-03-06
打赏
举报
回复
darxin的解说 非常精辟…………
yao_ge
2009-11-24
打赏
举报
回复
谢谢楼上几位大侠。本问题已经解决。。。。。特别感谢darxin朋友、、、
hejuan250229087
2009-11-24
打赏
举报
回复
<form action="${pageContext.request.contextPath}/sub/submit.jsp" method="post">
</form>
这个应该蛮好用的吧,我一直用这个
上面粗心落了一个符号,这个可以了
hejuan250229087
2009-11-24
打赏
举报
回复
<form action="${pageContext.request.contextPath}/sub/submit.jsp" method="post">
</form>
这个应该蛮好用的吧,我一直用这个
上面粗心落了一个符号,这个可以了
hejuan250229087
2009-11-24
打赏
举报
回复
<form action="${pageContext.request.contextPath}sub/submit.jsp" method="post">
</form>
这个应该蛮好用的吧,我一直用这个
darxin
2009-11-24
打赏
举报
回复
在JSP中,脚本化语言如“<%=contextPath%>”可以从page,request,session及application中取值。
下面的代码可以看到结果是因为contextPath被保存在page中:
<% String contextPath = request.getContextPath(); %>
<form action="<%=contextPath%>/sub/submit.jsp" method="post">
</form>
EL表达式如“${contextPath}”只能从request,session及application中取值。
上述代码修改一下就可以支持EL表达式:
<%
String contextPath = request.getContextPath();
// 将contextPath保存到request中
request.setAttribute("contextPath", contextPath);
%>
<form action="${contextPath}/sub/submit.jsp" method="post">
</form>
道光2008
2009-11-23
打赏
举报
回复
接分
passself
2009-11-23
打赏
举报
回复
不要用forword要用redirect
礼拜六
2009-11-23
打赏
举报
回复
action="<%=request.getContextPath() %>/sub/submit.jsp"
磊磊崔
2009-11-23
打赏
举报
回复
再给你推荐一个更好的方法,
<%!String basePath=request.getContextPath();%>
<form action="<%=basePath%>\sub\submit.jsp" method="post">
</form>
basePath 是你项目的根路径,推荐这样做,不管以后你的sub 文件夹怎么移动,都是可以成功提交的。
lanwenyao
2009-11-23
打赏
举报
回复
jsp页面的ACTION=“/login.do”
<action-mappings>
<action name="userForm" path="/login" scope="request"
type="com.yourcompany.struts.action.LoginAction">
<forward name="result" path="/sub/submit.jsp" />
</action>
</action-mappings>
yao_ge
2009-11-23
打赏
举报
回复
而在<form action=" ${basePath}/sub/submit.jsp" method="post">
</form>
居然不行
而<%!String basePath=request.getContextPath();%>
<form action=" <%=basePath%>/sub/submit.jsp" method="post">
</form>
这样方可以
-----------前提都
isELIgnored="false"
了,为什么??
yao_ge
2009-11-23
打赏
举报
回复
到这边基本可以结贴了,几个方法自己全试一试了。其中6楼 9楼 11楼中的试了一下,现在这个问题基本解决。。。但是在其中又发现了个问题 !!
问题如下:
在<jsp:forword page="<%=basePath%>/sub/submit.jsp"/>
如果这样写,在发布出来访问这个页面居然会报错。。有人能说说原因吗?
<jsp:forword page="${basePath}/sub/submit.jsp"/>
如果这样写就可以了
darxin
2009-11-23
打赏
举报
回复
需要注意的是,你现在讨论的是HTML的相关路径与绝对路径的问题。
先看一下下面的URL:
http://192.168.1.1:8080/hello/index.html
一个URL由
服务器地址: http://192.168.1.1:8080
WEB应用上下文: /hello
网页或请求: /index.html
三个部分组成。
WEB应用发布时,WEB应用上下文可以自行指定,如放在ROOT/下的话,WEB应用上下文就是空,如:
http://192.168.1.1:8080/index.html
它的WEB应用上下文就是空。
HTML协议中要求,form的action属性,以“/”开头是绝对路径,不以“/”开头的是相对路径。
绝对路径是相对于服务器地址而言的,相对路径是相对于当前网页或请求而言的。
举一个例子,你的当前网页位置是:
http://192.168.1.1:8080/hello/page/index.html
其中/hello是WEB应用上下文;/page/index.html是网页。
在这个网页上有一个请求需要指向
http://192.168.1.1:8080/hello/servlet/checkUser.cgi
index.html中的form应该怎么写呢?
可以写成绝对路径(相对于http:/192.168.1.1:8080)
<form action="/hello/servlet/checkUser.cgi" >
...
</form>
也可以写成相对路径(相对于http://192.168.1.1:8080/hello/page)
<form action="../servlet/checkUser.cgi" >
...
</form>
当前如果你的WEB应用是基于JSP的话,有许多第三方的标签库如JSTL或基于Struts的标签库都可以在form中自动为你加上WEB应用上下文,如二楼东走西顾的例子。
如果你准备在JSP使用基本语句生成网页的话,六楼honglei915提供了一个很好的例子,只不过“/”更规范一些,如:
<%!String basePath=request.getContextPath();%>
<form action="<%=basePath%>/sub/submit.jsp" method="post">
</form>
draling
2009-11-23
打赏
举报
回复
<%=basePath%>\sub\submit.jsp
puyu87
2009-11-23
打赏
举报
回复
以 ./ 开始是相对于当前路径
/ 是相对于根目录的绝对路径
../ 是退到它的上一级目录
这里写action="./sub/submit.jsp"
就好了
huangdh12
2009-11-22
打赏
举报
回复
index.jsp
<form action="/sub/submit.jsp" method="post">
数据
</form>
yao_ge
2009-11-22
打赏
举报
回复
3楼...我看的很郁闷?刚学JSP。。。为什么还要用到配置?struts-config.xml又在哪里啊?
yao_ge
2009-11-22
打赏
举报
回复
看的还是很郁闷。背后我自己写
<form action=".\sub\submit.jsp" method="post">
</form>可以了,
--------------------------
加载更多回复(2)
J2EE/JAVA——HTML
form表单
中
action
的‘/’
路径
问题
1.HTML
中
的
form表单
简单介绍 HTML
中
的
form表单
在JAVA企业级开发
中
拥有十分重要的地位,HTML表单用于收集用户输入的信息,并将收集到的用户信息发送到web服务器
中
。在初级阶段,
form表单
常常使用在设计用户登录、...
form表单
的
action
的
路径
问题
在做web时发现
form表单
提交后404,很多时候在
路径
上会有许多困惑 学习自 web项目项目
路径
时 /TestFilter 映射的
路径
/servlet/login 这是正确的写法,可以正确跳转到想要的servlet <form
action
="servlet/login...
form表单
中
action
的
路径
问题
首先明确./ , …/ , / 的...因为Index.jsp本来就是在web目录
中
(找到web相当于找到web.xml,所以现在index.jsp
中
只需要写当前
路径
下的
action
=“servlet/login"或者
action
=”./servlet/login") 2、使用
绝对
路径
。acti
Form表单
中
的
action
路径
问题
由于一个简单的表单
路径
问题,出现上面图片
中
问题,耽误了很多时间…… (1)HTML页面表单部分 <form
action
="login" method="get"> 账号:<input type="text" name="username"/><br/> 密码:&...
关于
form表单
中
的
action
路径
写法问题
1
action
后跟的
路径
分为两种写法: 首先,
action
支持相对
路径
1) ../page.jsp表示当前页面的上一级目录
中
的page.jsp 2)jsps/page.jsp表示当前目录jsps
中
的page.jsp 以form1.jsp举例 <form
action
="./...
Java EE
67,517
社区成员
225,876
社区内容
发帖
与我相关
我的任务
Java EE
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
复制链接
扫一扫
分享
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章