Я получил этот код в веточкеИзменить функциональность кнопки JQuery
{% if followsId == null %}
<div id="followUser" class="follow" data-userId="{{ profileUserData.id }}" data-currentUserId="{{ loggedUserData.id }}" data-action="follow">
Follow
</div>
{% else %}
<div id="unFollowUser" class="follow" data-followsId="{{ followsId }}">
Unfollow
</div>
{% endif %}
Я просто хотел, чтобы изменить содержание и функциональность кнопки на мыши и попытался этот код JQuery
$('#followUser').click(function() {
var userId = $(this).attr('data-userId'),
action = $(this).attr('data-action'),
currentUser = $(this).attr('data-currentUserId');
$.ajax({
method: 'POST',
url: "/sci-profile/profile/follow",
data: {
userId: currentUser,
profileUserId: userId,
action: action
},
success: function(response)
{
$('#followUser').attr('id', 'unFollowUser')
.text('Unfollow')
.fadeOut(50)
.delay(50)
.fadeIn(50);
}
});
});
С помощью этого кода на странице источника Я вижу разные идентификаторы и другой текст на кнопке, но при нажатии второй раз я вызываю первую кнопку, как будто она никогда не менялась. Есть ли способ обновить память для этого элемента или я ошибаюсь с самого начала?
I га d нашел решение с этим вопросом: ** http: //stackoverflow.com/questions/38686742/reload-js-function-when-load-element-with-ajax** –