これを機能させようとしていますが、うまくいきません。ここで私がやろうとしているのは、リンク (.hidepage) をクリックすると ajax が実行され、完了するとそのリンク名とクラス名が (> showpage に) 変更されることです。そして、機能していないのは、ショーページのリンクを再度クリックすると、再び非表示になります。
$('.hidepage').on('click', function(e){
var pageStatus = $(this).closest('tr').find('.pagestatus');
var button = $(this);
var pageID = $(this).attr('pageid');
$.ajax({
type: 'POST',
url: Jarvis.ajax_url + 'hidepage',
data: { pageid: pageID },
success: function(data)
{
console.log(data);
pageStatus.html('<span class="label label-default">Hide page</span>');
},
complete: function()
{
button.removeClass('hidepage').addClass('showpage').html('Show page');
},
error: function(xhr, textStatus, error){
console.log(xhr.statusText);
console.log(textStatus);
console.log(error);
}
});
});
また、反対のアクションの showpage クラスにも同じコードがあります。他のすべてが機能しています。pageStatus は変化しています。リンク名は変化していますが、アクションは変化していません。ご協力ありがとうございます。:)