我正在尝试执行下面的代码,从一个页面重定向到另一个页面,其中包含特定的“a”标记,并附加了clk变量中的特定链接
function abc()
{
var a = document.getElementsByTagName("a");
//alert(a);
for (var i = 0; i < a.length; i++) {
a[i].onclick = function (e) {
e.preventDefault();
var clk=$(this).attr('href');
window.location='http://www.shopeeon.com?ver='+clk;
//doSomething();
}
}
}
<a id="first" onclick='abc();' href="http://www.google.com" >Google</a><br/>
<a id="second" onclick='abc();' href="http://www.yahoo.com" >Yahoo</a><br/>
<a id="third" onclick='abc();' href="http://www.rediff.com" >Rediff</a><br/>
<a id="third" onclick='abc();' href="http://www.gmail.com" >Gmail</a><br/>
<a id="third" onclick='abc();' href="http://www.facebook.com" >Facebook</a><br/>
以上代码无法正常使用
e.g。假设当我点击第一个链接(或者可能是其他链接)然后在该特定点击上我获得该链接的href并存储在clk变量中并且还重定向到具有该特定链接的其他页面。
答案 0 :(得分:3)
您不需要使用循环来添加onclick
事件,因为您使用的是内联事件onclick
,也可以使用方法href
获取getAttribute
function abc(event) {
event.preventDefault();
var href = event.currentTarget.getAttribute('href')
window.location='http://www.shopeeon.com?ver=' + href;
}
<a id="first" onclick='abc(event);' href="http://www.google.com" >Google</a><br/>
<a id="second" onclick='abc(event);' href="http://www.yahoo.com" >Yahoo</a><br/>
<a id="third" onclick='abc(event);' href="http://www.rediff.com" >Rediff</a><br/>
<a id="fourth" onclick='abc(event);' href="http://www.gmail.com" >Gmail</a><br/>
<a id="fifth" onclick='abc(event);' href="http://www.facebook.com" >Facebook</a>
但是如果在你的项目中有jQuery,你可以像这样解决这个问题
$('a.redirect').click(function (event) {
event.preventDefault();
var href = $(this).attr('href')
window.location='http://www.shopeeon.com?ver=' + href;
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<a class="redirect" id="first" href="http://www.google.com" >Google</a><br/>
<a class="redirect" id="second" href="http://www.yahoo.com" >Yahoo</a><br/>
<a class="redirect" id="third" href="http://www.rediff.com" >Rediff</a><br/>
<a class="redirect" id="fourth" href="http://www.gmail.com" >Gmail</a><br/>
<a class="redirect" id="fifth" href="http://www.facebook.com" >Facebook</a>
注意 - id
必须是唯一的