お願いします。 私は「フォロー」ボタンを持っています。ボタンを押すと、javascriptのクリックイベントが発生し、いくつかのAjaxリクエストが行われます。すべてOKなら、「Follow」ボタンを「Unfollow」ボタンに置き換えて、適切なコードを入力する必要があります。これまではボタンのテキストのみを変更できますが、ユーザーがフォローしてからページをリフレッシュせずにフォローしたい場合、私のコードは機能しません。ここでjQuery:ajaxリクエスト後のボタンのアクションと属性の変更
は、フォローボタンのための私のhtmlである:ここでは
<a href="javascript:;" class="genbutton btn-follow" id="follow-239618"><span>Follow</span></a>
はフォローボタン用です:ここでは
<a href="javascript:;" class="genbutton btn-unfollow" id="unfollow-239618"><span>Unfollow</span></a>
は私のjavascriptです:
function sub(subAction, user_id) {
if(subAction == 'follow'){
$("a#follow-"+ user_id +" span").addClass("loading");
}
if(subAction == 'unfollow'){
$("a#unfollow-"+ user_id +" span").addClass("loading");
}
$.ajax({
type: "post",
url: "http://"+ siteDomain +"https://stackoverflow.com/a/subHandler",
data: "do="+ subAction +"&user_id=" + user_id,
success: function(data, textStatus){
if(subAction == 'follow'){
$("a#follow-"+ user_id +" span").removeClass("loading");
}
if(subAction == 'unfollow'){
$("a#unfollow-"+ user_id +" span").removeClass("loading");
}
var errorOccured = data["ERR"];
if(!errorOccured){
if(subAction == 'follow'){
$("a#follow-"+ user_id +" span").text("Unfollow");
}
if(subAction == 'unfollow'){
$("a#unfollow-"+ user_id +" span").text("Follow");
}
}
}
}, "json");
}
$(".btn-follow").click(function(){var user_id = $(this).attr("id").replace('follow-', '');sub('follow', user_id);return false;});
$(".btn-unfollow").click(function(){var user_id = $(this).attr("id").replace('unfollow-', '');sub('unfollow', user_id);return false;});