Цитата:
var x = 'fff\ dffdf\ ffdfddf '; var y = 'fff' + '\n' + 'dffdf' + '\n' + 'ffdfddf '; alert([x,y]); Цитата:
|
Цитата:
|
Может мы о разном говорим?
Имею обработчик ajax-запроса:
$str = "Каждая
в своей
строке";
if (isset($_POST['how'])) {
$how = $_POST['how'];
if ($how == 'json') {
// передаю json - экранирую
echo 'var x = "' . str_replace("\r\n" , "\\\r\n" , $str) . '";';
} else {
// передаю html
echo '<div>' . $str . '</div>';
}
}
В textarea мне надо получить этот текст (состоящий из 3-х строк) Вот запрос на html:
function whatdo()
{
// действия
$.post('./listener.php' , {how : 'html'}, function(data){
var txt = $(data).text();
$('textarea').val(txt); // получим как в php было - три строки
});
}
- все ОК. Вот запрос на json:
function whatdo2()
{
// действия
$.post('./listener.php' , {how : 'json'}, function(data){
try {
eval(data);
$('textarea').val(x); // получим все в одну строку
} catch(e) {
alert('ошибка');
}
});
}
- отрабатывает без ошибки, но результат в textarea - одна слитая строка, а не три. Т.е. по простому сделать(как вариант 1.) не выходит. Или что делаю не так? |
Цитата:
json_encode($str);А вы просто слэши в конце каждой строки поставили. |
спс, буду знать.
|
Если использование XSLT упростит задачу, то конечно лучше XML, например подгрузка дерева. В общем всё от ситуации зависит.
|
Пробовал загружать данные в json с сайта, они приходят в виде строки.
Сделал myjson = eval(json); Выдаёт : Ошибка: invalid label Исходный код: {subject:"tfkp",title:"Сборник задач по теории функции комплексного переменного",author:"Волковынс кий, Лунц, Араманович",yearOfPublish:"2006"} JSON : {subject:"tfkp",title:"Сборник задач по теории функции комплексного переменного",author:"Волковынс кий, Лунц, Араманович",yearOfPublish:"2006"} Пробовал и myjson = eval('('+json+')'); Просто я первый раз json загружаю с сайта, раньше html уже готовый загружал. А теперь появилась необходимость в JSON и что-то не разбирусь. НУ вроде получилось запустить myjson = eval('('+json+')'); НО как теперь к свойствам обратится ? ЧТо то myjson.title не работает. |
Цитата:
alert(eval('({subject:"tfkp",title:"Сборник задач по теории функции комплексного еременного",author:"Волковынс кий, Лунц, Араманович",yearOfPublish:"2006"})').subject);
Цитата:
alert(JSON.stringify({subject:"tfkp",title:"Сборник задач по теории функции комплексного переменного",author:"Волковынс кий, Лунц, Араманович",yearOfPublish:"2006"}));
И в современных браузерах есть специальный метод JSON.parse:
alert(JSON.parse('{"subject":"tfkp","title":"Сборник задач по теории функции комплексного переменного","author":"Волковынс кий, Лунц, Араманович","yearOfPublish":"2006"}').subject);
|
Всё заработало, огромное спасибо.
|
Цитата:
Цитата:
Цитата:
|
| Часовой пояс GMT +3, время: 17:21. |