form action="servletname" 还有a href="servletname",也就是说form表单和href链接都是要跳转到某一个指定的servlet中去,这里跳转的不是servletname,其实应该是servlet的url地址,也就是映射地址,没有路径你自己添加路径过去,在webxml中<servlet-mapping>下找到<url-pattern>里的值,例如 <url-pattern>/showInfo</url-pattern>中你的映射跳转地址就是form action="/showInfo"
你的需求不想在表单提交后获取他们的值 如果不用ajax是不可能的 所以学习一下ajax吧
如果使用ajax你必须使用javascript
首先为你想获得的内容设一个事件源 比如你在一个文本框内输入一些内容 不通过提交表单而访问struts的action 那么可以给文本框加一个 id="txt1" onblur="fn()"//失去焦点事件 访问javascript里的fn()函数
那么我们可以在fn()函数里 *** 作
<script language="javascript" type="text/javascript">
function fn(){
var id=documentgetELementById("txt1")value;//获得文本框内容
var request = new XML>
解析url,本想用正则表达式处理,但正则表达式速度较慢。用split处理一下就可以了。
package RequestPackage;
import javautilHashMap;
import javautilMap;
public class CRequest {
/
解析出url请求的路径,包括页面
@param strURL url地址
@return url路径
/
public static String UrlPage(String strURL)
{
String strPage=null;
String[] arrSplit=null;
strURL=strURLtrim()toLowerCase();
arrSplit=strURLsplit("[]");
if(strURLlength()>0)
{
if(arrSplitlength>1)
{
if(arrSplit[0]!=null)
{
strPage=arrSplit[0];
}
}
}
return strPage;
}
/
去掉url中的路径,留下请求参数部分
@param strURL url地址
@return url请求参数部分
/
private static String TruncateUrlPage(String strURL)
{
String strAllParam=null;
String[] arrSplit=null;
strURL=strURLtrim()toLowerCase();
arrSplit=strURLsplit("[]");
if(strURLlength()>1)
{
if(arrSplitlength>1)
{
if(arrSplit[1]!=null)
{
strAllParam=arrSplit[1];
}
}
}
return strAllParam;
}
/
解析出url参数中的键值对
如 "indexjspAction=del&id=123",解析出Action:del,id:123存入map中
@param URL url地址
@return url请求参数部分
/
public static Map<String, String> URLRequest(String URL)
{
Map<String, String> mapRequest = new HashMap<String, String>();
String[] arrSplit=null;
String strUrlParam=TruncateUrlPage(URL);
if(strUrlParam==null)
{
return mapRequest;
}
//每个键值为一组 >
解析url,本想用正则表达式处理,但正则表达式速度较慢。用split处理一下就可以了。
package RequestPackage;
import javautilHashMap;
import javautilMap;
public class CRequest {
/
解析出url请求的路径,包括页面
@param strURL url地址
@return url路径
/
public static String UrlPage(String strURL)
{
String strPage=null;
String[] arrSplit=null;
strURL=strURLtrim()toLowerCase();
arrSplit=strURLsplit("[]");
if(strURLlength()>0)
{
if(arrSplitlength>1)
{
if(arrSplit[0]!=null)
{
strPage=arrSplit[0];
}
}
}
return strPage;
}
/
去掉url中的路径,留下请求参数部分
@param strURL url地址
@return url请求参数部分
/
private static String TruncateUrlPage(String strURL)
{
String strAllParam=null;
String[] arrSplit=null;
strURL=strURLtrim()toLowerCase();
arrSplit=strURLsplit("[]");
if(strURLlength()>1)
{
if(arrSplitlength>1)
{
if(arrSplit[1]!=null)
{
strAllParam=arrSplit[1];
}
}
}
return strAllParam;
}
/
解析出url参数中的键值对
如 "indexjspAction=del&id=123",解析出Action:del,id:123存入map中
@param URL url地址
@return url请求参数部分
/
public static Map<String, String> URLRequest(String URL)
{
Map<String, String> mapRequest = new HashMap<String, String>();
String[] arrSplit=null;
String strUrlParam=TruncateUrlPage(URL);
if(strUrlParam==null)
{
return mapRequest;
}
//每个键值为一组 >
比如说我要跳转到 user/Index/index 的方法,可以这么写:
$this->redirect("User/Index/index",array('参数一'=>参数一的值));
达成~
以上就是关于在<form action="servletname"><a href=="servletname">中都没有路径它怎么去找web.xml中的url 麻烦您了全部的内容,包括:在<form action="servletname"><a href=="servletname">中都没有路径它怎么去找web.xml中的url 麻烦您了、Action怎样获取页面的值呢、java怎样获取url参数等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)