方法一:采用正则表达式获取地址栏参数:( 强烈推荐,既实用又方便!)
function GetQueryString(name){ var reg = new RegExp("(^|&)"+ name +"=([^&])(&|$)"); var r = windowlocationsearchsubstr(1)match(reg); if(r!=null)return unescape(r[2]); return null;} // 调用方法alert(GetQueryString("参数名1"));alert(GetQueryString("参数名2"));alert(GetQueryString("参数名3"));
下面举一个例子:
若地址栏URL为:abchtmlid=123&url=>
可以新建一个js文件,内容如下:
(function ($) {
$getUrlParam = function(name)
{
var reg = new RegExp("(^|&)"+ name +"=([^&])(&|$)");
var r = windowlocationsearchsubstr(1)match(reg);
if (r!=null) return unescape(r[2]); return null;
}
}) (jQuery);
在要获取url参数的页面导入这个js,想要获取参数,就这样写:
var name = $getUrlParam("name");
$getUrlParam("name")的参数name就是url里面的参数名称。
jquery获取url参数的办法:
function jsGetUrlParam(name) {
var reg = new RegExp("(^|&)" + name + "=([^&])(&|$)");
var r = windowlocationsearchsubstr(1)match(reg);
if (r != null) return unescape(r[2]); return null;
}
解析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;
}
//每个键值为一组 >
首先这里的referer是指你点的是这个链接进入上传页面的。
你点了上传 *** 作,就又有了上传的请求url,按你的代码中:
U('album/imageupload',array('id'=>albumid))
上传请求链接里你只传了这个所以$_GET['id']只会接收到albumid
解决办法:
方法一:
看看你的上传插件支持不支持附加post传参,支持的话在上传插件中传入,php用$_POST['id']就能得到id值
方法二:
上传链接中另加一个参数
U('album/imageupload',array('id'=>albumid,
'albumid'=>$_GET['id']))
php里用$_GET['albumid']接收
function UrlSearch()
{
var name,value;
var str=locationhref; //取得整个地址栏
var num=strindexOf("")
str=strsubstr(num+1); //取得所有参数 stringvarsubstr(start [, length ]
var arr=strsplit("&"); //各个参数放到数组里
for(var i=0;i < arrlength;i++){
num=arr[i]indexOf("=");
if(num>0){
name=arr[i]substring(0,num);
value=arr[i]substr(num+1);
this[name]=value;
}
}
}
var Request=new UrlSearch(); //实例化
var name=Requestname;
望采纳。
以上就是关于如何获取自身url的参数全部的内容,包括:如何获取自身url的参数、如何通过链接获取跳转后的url参数、HTML load()方法跳转页面获取URL参数等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)