Название всплывающей подсказки не обновляется динамически - PullRequest
0 голосов
/ 11 октября 2018

У меня есть эта проблема с всплывающей подсказкой, когда я нажимаю на кнопку «Мне нравится», элемент становится понравившимся, но во всплывающей подсказке по-прежнему отображается заголовок «Мне нравится», когда теперь должен отображаться заголовок «Не похоже».Но когда я обновляю страницу, она работает нормально (показывает заголовок "непохожий").Я хочу, чтобы он работал, не обновляя страницу, вот мой код.

это та часть, где кнопка like *

<a href="javascript:void(0);" class="@(item.Islike == true ? "icon-like active" : "icon-like")" ng-click="EventlikeNew(@item.event_id)" tooltip-placement="top"  uib-tooltip=@(item.Islike == true ? GetResolvedText("UnlikeText") : GetResolvedText("LikeText"))>

@functions{
string GetResolvedText(string key)
    {
        return Model.OurCustomer_ViewModel[0].datat.FirstOrDefault(l => l.Key == key).Value;
        //return Model[0].datat.FirstOrDefault(l => l.Key == key).Value;
    }
}

, вот функция js

$scope.EventlikeNew = function (EventId, index, type) {
    debugger;
    $scope.eventLikebeforeLogin.EventId = EventId;
    (index == undefined) ? '' : $scope.eventLikebeforeLogin.index = index;
    $scope.eventLikebeforeLogin.type = type;
    var userid = sessionStorage.getItem("UserId");
    if (userid == null || userid == "null") {
        $('#myModal').modal('toggle');

    }
    else {
        if (type == undefined)
            angular.copy($scope.eventDesc, $scope.editeditem);
        else if (type == "manager")
            angular.copy($scope.eventDesc.ManagerialEvents[index], $scope.editeditem);
        else
            angular.copy($scope.eventDesc.SimilarEvents[index], $scope.editeditem);
        EventService.EventLikeapi(EventId, userid).then(function (response) {
            debugger;
            var divLike = $("div#" + EventId);
            var likeCount = 0;
            if (!isNaN(parseInt($(divLike).find("span").html()))) {
                likeCount = parseInt($(divLike).find("span").html());
            }
            if ($(divLike).find("a").hasClass("active")) {  //Disliking Event
                likeCount--;
                $(divLike).find("a").removeClass("active");
                $(divLike).find("span").css("color", "black");
                // $(divLike).find("a").tooltip("close");

                // $(divLike).find("a").attr('uib-tooltip', 'like');
                if (likeCount > 0) {
                    $(divLike).find("span").html(likeCount);
                }
                else {
                    $(divLike).find("span").html("");
                }
                $translate('SweetEventdisLikeText').then(function (text) {
                    sweet.show({
                        type: 'warning',
                        title: "",
                        text: text,
                        timer: 2000,
                        showConfirmButton: false,
                        allowOutsideClick: true
                    });
                });
            }
            else {
                likeCount++;
                $(divLike).find("a").addClass("active");
                $(divLike).find("span").css("color", "white");
                $(divLike).find("span").html()
                $(divLike).find("span").html(likeCount);
                $(divLike).find("a").tooltip("close");
                $translate('SweetEventLikeText').then(function (text) {
                    sweet.show({
                        type: 'success',
                        title: "",
                        text: text,
                        timer: 2000,
                        showConfirmButton: false,
                        allowOutsideClick: true
                    });
                });
            }
            angular.copy($scope.editeditem, (type == undefined ? $scope.eventDesc : (type == "manager" ? $scope.eventDesc.ManagerialEvents[index] : $scope.eventDesc.SimilarEvents[index])));
        });
    };

1 Ответ

0 голосов
/ 11 октября 2018

использовать как, ng-click = " return EventlikeNew (@ item.event_id);"

и вернуть false в конце функции EventlikeNew,

Я надеюсь, что это работает.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...