我现在正在使用以下代码snippit将#onelink id的链接更改为其他链接(如果altlink有内容)
if ($("#onelink").length > 0) {
if (altlink != '') {
$("#onelink").attr('href', site_url + altlink);
}
}
正确编辑的html是:
<a href="http://www.website.com/default/" id="onelink">Update</a>
它变成了:
<a href="http://www.website.com/testpage/" id="onelink">Update</a>
它适用于单个ID链接,但在我的情况下,我现在使用的是ID,页面上有10个以上的链接。
我认为这适用于单个链接但不是:
if ($(".onelink").length > 0) {
if (altlink != '') {
$(".onelink").attr('href', site_url + altlink);
}
}
正在编辑的HTML 不正确:
<a class="onelink otherclass otherclass other class" href="http://www.website.com/default/"><span class="button-text">Update</span></a>
它变成了:
<a class="onelink otherclass otherclass other class" href="http://www.website.comundefined"><span class="button-text">Update</span></a>
http://www.website.comundefined
应该是http://www.website.com/testpage/
现在我想到了多个链接:
$(".onelink").each(function(){
if ($(this).length > 0) {
if (altlink != '') {
$(this).attr('href', site_url + altlink);
}
}
});
但同样的问题也是如上所述。
答案 0 :(得分:1)
尝试检查altlink
是否存在且不为空:
if (altlink && altlink.length > 0) {
所以你的完整代码将是:
$(".onelink").attr("href", function() {
if (altlink && altlink.length > 0) {
$(this).attr('href', site_url + altlink);
}
});
确保包含jQuery并将此代码放在$(document).ready()
函数。
<强>段强>
site_url = "http://facebook.com/";
altlink = "?search=praveen";
$(function () {
$(".onelink").attr("href", function(){
if (altlink && altlink.length > 0) {
return site_url + altlink;
}
});
});
&#13;
.onelink {background: #ccf;}
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<div><a href="http://www.google.com/">Non Alt Link</a></div>
<div><a href="http://www.google.com/" class="onelink">Alt Link</a></div>
<div><a href="http://www.google.com/">Non Alt Link</a></div>
<div><a href="http://www.google.com/" class="onelink">Alt Link</a></div>
<div><a href="http://www.google.com/">Non Alt Link</a></div>
<div><a href="http://www.google.com/" class="onelink">Alt Link</a></div>
<div><a href="http://www.google.com/">Non Alt Link</a></div>
<div><a href="http://www.google.com/" class="onelink">Alt Link</a></div>
<div><a href="http://www.google.com/">Non Alt Link</a></div>
<div><a href="http://www.google.com/" class="onelink">Alt Link</a></div>
&#13;