如何在单个变量名称中获取多个url值

How can i take multiple url value in single variable name

本文关键字:获取 url 单个 变量名      更新时间:2023-09-26

在下面,我想使用url重定向将一个变量值从一个页面传递到另一个页面。但在我的变量中,我有多个url,所以当我点击特定的url时,只有那个url值会被存储和重定向。

<script src="jquery-1.11.3.js"></script>
<script>
$(document).ready(function(){
	
   $('a').click(function(e){
	e.preventDefault();
	var clk=$('#fkt').attr('href');
	var clk=$('#snd').attr('href');
	var clk=$('#amz').attr('href');
	//alert(clk);
	window.location='http://www.shopeeon.com?ver='+clk;
	});
});
</script>
<a id='fkt' href="http://www.google.com">Google</a><br/>
<a id='snd' href="http://www.yahoo.com">Yahoo</a><br/>
<a id='amz' href="http://www.rediff.com">Rediff</a><br/>

在我的情况下,它将只使用最后一个URL链接并存储在clk变量中。

要获取当前单击的<a>标记的href,请使用this:

$('a').click(function(e){
    e.preventDefault();
    var clk = $(this).attr('href');
    window.location='http://www.shopeeon.com?ver='+clk;
});

它不起作用的原因是,您一次又一次地重新解析同一个字符串,它会清除旧内容。你可以使用这个:

var clk = $('#fkt').attr('href');
clk += $('#snd').attr('href');
clk += $('#amz').attr('href');

这会连接字符串。

你会使用数组吗?

var clk = [];
clk.push($('#fkt').attr('href'));
clk.push($('#snd').attr('href'));
clk.push($('#amz').attr('href'));
console.log(clk.join(","));
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<a id='fkt' href="http://www.google.com">Google</a><br/>
<a id='snd' href="http://www.yahoo.com">Yahoo</a><br/>
<a id='amz' href="http://www.rediff.com">Rediff</a><br/>

您应该使用上下文this。但最终,你要寻找的是:

$('a').click(function (e) {
  e.preventDefault();
  var clk = $(this).attr('href');
  location.href = 'http://www.shopeeon.com?ver='+clk;
});