web-dev-qa-db-ja.com

アンカータグに特定の値を追加するにはどうすればよいですか?

次のコードがあります

<a href="" (set value 1)>Inside Link which sets a value</a>

<script>
$(a).click(function() {
    i=value of a tag;
    $('#square').animate({'left': i * 360});
});

</script>

そして、私はアンカー属性に値属性を追加したいと思います。どうやってするの?

12
Alex G.

値にランダムな属性を追加する場合は、データ属性を使用できます。

<a href="#" data-value="1">Text</a>

<script type="text/javascript">
$("a").click(function(){
    i=$(this).data("value");
    $('#square').animate({'left': i * 360});
});
</script>
26
Andrew Jackman

HTML5を使用している場合は、data-テクニックを使用できます。

<a id="target" href="http://foo.bar" data-custom-value="1">Text</a>

$("#target").click(function() {
    var value = $(this).data("custom-value");
    // do other stuff.
});

編集する

.dataではなく.attrを使用する方が適切です

10
Oybek

カスタムデータ属性を使用できます this を参照してください。

<a href="#" data-json="{ 'myValue':'1'}">Click</a> //you can even pass multiple values there.

次に、data()関数を使用してアクセスします。

または、jsonを使用する代わりに、属性として配置できます。

<a href="link"  myvalue="1"">

次に、それを使用して取得します:

$("#link").data("myvalue")
1
Mouna Cheikhna

<a href="#" data-value="IE" id="click">Click</a>

    ` $("#click").click(function(event){console.log($(this).data("value"));});`
0

data-valueは良い属性です。ただし、アンカータグに「rel」属性を追加することもできます。リンク先のドキュメントとの関係を記述しています。また、値を格納するために使用することもできます。

このような -

$("a").click(function(){
 var page = $(this).attr('rel'); // save the attribute value here

 sessionStorage.setItem("text",page);

/*save it in session storage if you want to send (or retrieve) this value to another page. 
if not then use it easily without saving it in session storage*/

 //Use it here 

 return false; // to stop the redirection if <a> contains a link
});

0