0

私は tumblr テーマを作成しています。これまでの投稿にいいねボタンを追加しました。これはサンプル URL です:

<a class="loveit" href="http://www.tumblr.com/like/fGKvAJgQ?id=16664837215">like it</a>

これは完全に機能します。ただし、結果は空白のページになるだけなので、ページを更新せずにリンクをトリガーする方法が必要です。

現時点では、私はこのコードを試しています:

$('.loveit').click(function(e){
  e.preventDefault();
    var targetUrl = $(this).attr('href');
 $.ajax({
        url: targetUrl,
        type: "GET",
        success:function(){
            alert("done");
        },
        error:function (){
            alert("testing error");
        },
    });
});

しかし、うまくいきません。既存のページを更新せずにこのリンクを実行するにはどうすればよいですか?

ありがとう

4

1 に答える 1

3

あなたのURLをrelに入れてみてください:

<a class="loveit" href="javascript:;" rel="http://www.tumblr.com/like/fGKvAJgQ?id=16664837215">like it</a>

そしてそれをjqueryで使用します:

$('.loveit').click(function(e){
  e.preventDefault();
    var targetUrl = $(this).attr('rel');
 $.ajax({
        url: targetUrl,
        type: "GET",
        success:function(){
            alert("done");
            return false;
        },
        error:function (){
            alert("testing error");
        }
    });
});

または onClick 関数を使用できます。

<a class="loveit" href="javascript:;" onClick="like(this);" rel="http://www.tumblr.com/like/fGKvAJgQ?id=16664837215">like it</a>


function like(placeholder) {
        $.ajax({
            url: $(placeholder).attr('rel'),
            type: "GET",
            success:function(){
                alert("done");
            },
            error:function (){
                alert("testing error");
            }
        });
        return false;
}
于 2013-03-31T12:35:30.877 に答える