Тема: smarty + js + php
Показать сообщение отдельно
  #1 (permalink)  
Старый 28.01.2020, 10:24
Профессор
Отправить личное сообщение для ureech Посмотреть профиль Найти все сообщения от ureech
 
Регистрация: 11.03.2013
Сообщений: 778

smarty + js + php
Всем привет. В смарте имею цикл
{foreach key=tid item = week from=$list_weeks}
{if $f == 1}{$week.a=$week.a1}{/if}
{$week.a} // 1
{$week.b} // 2
{$week.c}//  3

{/foreach}


В php параметр ['a'] выбирается из базы в зависимости от условия. Т.е.
if( $f == 1){$a = 'a1';}if( $f == 2){$a = 'a2';}if( $f == 3){$a = 'a3';}

Теперь в js мне нужно использовать {$week.a} в аяксе и в цикле.
function foo(){
$.ajax({
......
success : function (data) {
var res1 = [];
for(var i=0; i<data.length; i++) {
res1 += data[i].a+',';
}
});
}

И вот тут засада. res1 неопределена. Хотя аякс и возвращает массив с переменной [{а1:1,...}]. Если я подставляю в цикле
res1 += data[i].a1+',';

то всё работает. Как мне заставить работать скрипт? Пробовал в js условие задать перед foo(). типа
if(f==1)var a = '{$week.a1}';
,передав предварительно в смарт $f и определив её в js.
не выходит.

Последний раз редактировалось ureech, 28.01.2020 в 10:28.
Ответить с цитированием