web-dev-qa-db-ja.com

jQueryまたはJavaScriptを使用して<a href = "に文字列を追加する方法

私は次のような要素を持っています、

<div id="pager">
<a href="/somepath/1">First</a>
<a href="/somepath/1">Previous</a>
<a class="" href="/somepath/1">1</a>
<a class="Current" href="/somepath/2">2</a>
<a class="" href="/somepath/3">3</a>
<a href="/somepath/3">Next</a>
<a href="/somepath/20">Last</a>
</div>

ブラウザで次のように変更して欲しい。

<div id="pager">
<a href="/somepath/1?a=text">First</a>
<a href="/somepath/1?a=text">Previous</a>
<a class="" href="/somepath/1?a=text">1</a>
<a class="Current" href="/somepath/2?a=text">2</a>
<a class="" href="/somepath/3?a=text">3</a>
<a href="/somepath/3?a=text">Next</a>
<a href="/somepath/20?a=text">Last</a>
</div>

"a"データ値を次のページに使用できるようにします。誰でも私にコードを与えることができますか?

div id="pager"-> <a>-> href="

追加したテキストを別のonChangeイベントで削除したいと思います。

前もって感謝します

14
user9371102

Jqueryがタグ付けされているので:

$('#pager a').each(function(){
     this.href += '?a=text';
})

バニラJSはこのようになります:

var a = document.getElementById('pager').getElementsByTagName('a'),
    length = a.length;

for(var i=0; i< length; i++){
    a[i].href += '?a=text';
}
30

.attr() は、多くのjQuery関数と同様に、既存の値を変更する関数引数を取ることができます。

$('#pager a').attr('href',function(i,str) {
   return str + '?a=text';
});
13
Blazemonger
$('#pager a').each(function() {
   $(this).attr('href', $(this).attr('href') + '?a=text');
});
6

単にattr property。例:-

$("a").attr("href", "http://www.google.com/")

これでうまくいきます。

5
Aamir Shah
$("#pager").find("a").each(function(){
var $this=$(this);
$this.attr("href",$this.attr("href")+"?a=text");
})
3
vikrant singh

attr メソッドを使用できます

$('a').attr('href', '/somepath/1?a=text');

そして、特定の<a>hrefを変更したい場合は、 ''に一意のIDを指定し、次にhrefを次のように変更します

$('#link').attr('href', '/somepath/1?a=text');
2
Khawer Zeshan

このコードを試してください:

$('#pager a').each(function(){
    this.href += '?a=text'
})
2
Lucas Willems