2011-03-04 185 views
1

我从这里采取了一个准备好的脚本,How to read GET data from a URL using JavaScript?,并且无法使其工作,即时通讯做什么错误? 这里是我的脚本:从网址获取数据

function getUrlParam(param) 
{ 
    param = param.replace(/([\[\](){}*?+^$.\\|])/g, "\\$1"); 
    var regex = new RegExp("[?&]" + param + "=([^&#]*)"); 
    var url = decodeURIComponent(window.location.href); 
    var match = regex.exec(url); 
    return match ? match[1] : ""; 
} 
var param = getUrlParam("process_number"); 
alert(param); 

,这里是我的链接:

http://erp.micae.com/index.cfm?fuseaction=objects.popup_print_files&process_number=SER-498&action_type=141&action_id=289&action_row_id=32&print_type=192 

THX的帮助!

对不起家伙,忘了我的网页是工作在一个框架,那为什么它不能从URL中获取数据,我想:)

+0

她的eis改进版本http://stackoverflow.com/questions/901115/get-querystring-values-with-jquery/5158301#5158301 – kjy112 2011-03-04 13:26:00

+0

该代码完美地工作。问题是什么? – Pointy 2011-03-04 13:30:29

+2

你忘了告诉我们**期望的结果**和**实际结果**是什么。 *不能使其工作,即时做错*什么是不是一个错误的描述。你预计我们会猜测*吗? – 2011-03-04 13:30:56

回答

2

既然你是在一个框架,如果你需要得到从主窗口href,这样做:

var href = window.top.location.href; 

然后处理它。

+0

谢谢帕特里克! :)你是世界上最好的人)) – abrabr 2011-03-04 13:59:46

0

该代码必须从它的网址你”的页面运行mantion重新挖掘参数值。换句话说,它仅在当前页面的当前网址上运行。它工作正常。

如果你想有一个功能,让你给一个任意URL参数值,你只需要添加一个额外的参数:

function getUrlParam(param, url) { 
    param = param.replace(/([\[\](){}*?+^$.\\|])/g, "\\$1"); 
    var regex = new RegExp("[?&]" + param + "=([^&#]*)"); 
    url = url || decodeURIComponent(window.location.href); 
    var match = regex.exec(url); 
    return match ? match[1] : ""; 
} 

alert(getUrlParam("process_number", "http://erp.micae.com/index.cfm?fuseaction=objects.popup_print_files&process_number=SER-498&action_type=141&action_id=289&action_row_id=32&print_type=192")); 
+0

thx但它只会工作一页,进程号码和动作类型等是变化的变量... – abrabr 2011-03-04 13:36:52