抱歉,我是Javascript的新手。我想用javascript从我的网址中获取一个数字,因为我非常需要它。我从另一个链接获得了这个代码,但它对我的情况来说还不够完美。代码是这样的:
<html>
<head>
<style>
</style>
<script type="text/javascript">
function kampret(){
x=location.pathname.split('/')[1];
alert(x);
}
</script>
</head>
<body onload='kampret()'>
</body>
</html>
我的网址是这样的:
http://domain.com/ztest1.php?ai=85&ver=7
我想得到那个数字&#39; 85&#39;并且我使用了该代码,结果是 ztest1.php 而不是85.而我如何得到唯一的85?谢谢。
答案 0 :(得分:3)
你可以尝试
var getUrlParams = function (url)
{
var params = {};
(url + '?').split('?')[1].split('&').forEach(
function (pair)
{
pair = (pair + '=').split('=').map(decodeURIComponent);
if (pair[0].length)
{
params[pair[0]] = pair[1];
}
});
return params;
};
结果是
Object {ai: "85", ver: "7"}
用法:
// 'http://domain.com/ztest1.php?ai=85&ver=7'
var params = getUrlParams( window.location.href );
alert( params.ai ); // 85
答案 1 :(得分:2)
试试这个:
function getURLParameter(name) {
return decodeURIComponent((new RegExp('[?|&]' + name + '=' + '([^&;]+?)(&|#|;|$)').exec(location.search)||[,""])[1].replace(/\+/g, '%20'))||null
}
$(document).ready(function(){
alert(getURLParameter('ai'));
}); //JQuery
window.onload = alert(getURLParameter('ai')); //JavaScript
通过你的:
<body onload='kampret()'></body>
<script>
function getURLParameter(name) {
return decodeURIComponent((new RegExp('[?|&]' + name + '=' + '([^&;]+?)(&|#|;|$)').exec(location.search) || [, ""])[1].replace(/\+/g, '%20')) || null
}
function kampret() {
alert(getURLParameter('ai'));
}
</script>
答案 2 :(得分:1)
试试这个:
//var url = "http://domain.com/ztest1.php?ai=85&ver=7";
var url = window.location.href;
var idx = url.indexOf("?");
var idx2 = url.indexOf("&");
var hash = idx != -1 ? url.substring(idx+4, idx2) : "";
如果您只想在此代码中使用85,则可以使用hash = idx != -1 ? hash.substring(3, idx) : "";
答案 3 :(得分:1)
使用php和javascript的小方法。
<?php $id = $_GET['ai']; ?>
<script language="javascript">
var id = <?php echo $id; ?>;
alert(id);
</script>