Добрый день. У меня проблема с выводом названия столбцов в jqgrid. Дело в том, что они хранятся в текстовом файле и каждый раз при загрузке я их оттуда достаю. Если я вставляю php код, который достает данные из файла непосредственно в код js, то все работает прекрасно:
$(table).jqGrid({<br>
url:'../ajax/table.php',<br>
datatype: "json",<br>
mtype: 'POST',<br>
colNames: <?php<br>
$file = "../txt/files/".$_SESSION["uid"].".txt";<br>
$r = fopen($file, "r") or die("Не могу открыть файл");<br>
$txt = fgets($r, 4999);<br>
$fp = explode(":", $txt);<br>
..........<br>
Если же я пытаюсь получить данные через ajax запрос, ничего не выходит. я делаю так:
function take_columns(){<br>
var answ = "";<br>
$.ajax({<br>
type: "POST",<br>
url: '...',<br>
data: null,<br>
async: false,<br>
datatype: "json",<br>
cache: false,<br>
success: function(html)<br>
{<br>
answ = html;<br>
}<br>
});<br>
return answ;<br>
}<br>
А затем:
c1 = take_columns("take_columns");<br>
$(table).jqGrid({<br>
url:'../ajax/table.php',<br>
datatype: "json",<br>
mtype: 'POST',<br>
colNames:c1,<br>
......<br>
И на выходе получаю «Число полей не соответствует числу столбцов таблицы». Причем данные из take_columns() приходят корректно, alert все выводит.
В чем может быть причина?