Bottle присвоить python переменную внутри javascript кода - PullRequest
0 голосов
/ 21 июня 2020

У меня есть фильтр на моем веб-сайте, и я использую Javascript, чтобы фильтр работал, вместо отправки данных в URL-адресе, когда фильтр изменяется, я хочу изменить переменную python на это значение, поэтому, когда вы перезагружаете страницу, она находится в том же фильтре. И снова в Javascript, когда страница загружается, измените видимость элементов, чтобы они соответствовали фильтру. Кроме того, фильтр имеет только два случая, полный и неполный.

Я приведу пример того, как я это делаю в данный момент, но переменная не меняется:

function filterOnlyComplete() {
     var showComplete = false;
     var complete = document.getElementsByClassName('isComplete')
     for (var i=0; i<complete.length; i++) {
         if (complete[i].style.display === "none") {
             complete[i].style.display = "block";
             showComplete = true;
             % session['isViewingCompleteHomework'] = True
         } else {
             complete[i].style.display = "none";
             showComplete = false;
             % session['isViewingCompleteHomework'] = False
         }
     }

     var uncomplete = document.getElementsByClassName('notComplete')
     for (var i=0; i<uncomplete.length; i++) {
         if (uncomplete[i].style.display === "none") {
             uncomplete[i].style.display = "block";
             showComplete = false;
             % session['isViewingCompleteHomework'] = False
         } else {
             uncomplete[i].style.display = "none";
             showComplete = true;
             % session['isViewingCompleteHomework'] = True
         }
     }

     if (showComplete) {
          document.getElementById('filter-only-complete').innerHTML = "Show Not Complete";
     } else {
          document.getElementById('filter-only-complete').innerHTML = "Show Complete";
     }
     console.log("{{session['isViewingCompleteHomework']}}");
}

% session['isViewingCompleteHomework'] = False и другие экземпляры this для каждого условия не присваивают ему логическое значение, хотя это не вызывает ошибки в консоли.

session - повар ie система, которая может быть использована для bottle, на случай, если кто-то не знает.

Я пробовал {{...}}, но это не сработало, потому что вы не можете назначить переменную в этом методе выхода.

...