У меня сейчас проблема с получением javascript и python для связи в web2py.
controller:
def testDB():
a=[]
a.append('a')
a.append('b')
a.append('c')
return dict(m=a)
(со временем это будет заменено массивом строк БД)В настоящее время я пытаюсь присвоить значения в м массиве в JavaScript.Я пробовал это несколькими способами:
var t="{{=m}}";
Возвращает около 43 бессмысленных символов.Затем я попытался:
var t= new Array(); var i=0;"{{q=0}}"
"{{i=len(message)}}"
i="{{=i}}";
for(q=0;q<i;q++,"{{q=q+1}}"){
t[q]="{{m[q]}}";
}
Что не удалось, поскольку переменная python q сбрасывалась каждый раз, когда выполнялся цикл, что является сердцем моей проблемы.Я также попытался использовать pop:
for(q=0;q<i;q++,"{{q=q+1}}"){
alert("{{m.pop()}}");
}
Но массив продолжает сбрасываться снова в начале цикла, поэтому он продолжает показывать ту же самую переменную.Есть ли более простой способ скопировать массивы, или остановить сброс переменных python, или даже просто подключить переменную javascript q к «{{m [q]}}» вместо этого?
Из того, что я 'мы обнаружили, что проблема заключается в том, что python является серверной стороной, поэтому вы не можете присвоить значения javascript его переменным, но я не уверен, что это имеет отношение к части цикла (если я делаю то же самое вне цикла,значения не сбрасываются).Общее решение, похоже, заключается в использовании ajax или json, но я бы хотел избежать этого, если это возможно.Спасибо