Форум программистов, компьютерный форум CyberForum.ru Форум программистов | Компьютерный форум | Форум web-программистов | Форум по электронике и бытовой технике | Форум о софте | Научный форум | Карьера и бизнес
CyberForum.ru - форум программистов и сисадминов > Форум Форум web-программистов > Форум JavaScript > Форум jQuery
Восстановить пароль Регистрация

Ответ Создать новую тему
 
28.08.2012, 15:21   #1
JoQeR
Форумчанин
 
Регистрация: 16.02.2012
Сообщений: 57
Репутация: 5 (5)
Загрузить данные из JSON в виде txt файла в массив / jQuery

Прошу помочь со следующим.
У меня есть текстовый файл с расширением .txt как я понял в jQuery можно из него данные загрузить с помощью JSON.

Тестовый файл:
Код JavaScript
1
2
3
4
5
6
7
{FumArray:[
"Петров",
"Сидоров",
"Кравчук",
"Курилов",
"Ломов"
]}
Вопрос: как получить доступ к элементам в этом текстовом файле, чтобы например выводить текст на веб-страницу с помощью цикла?

HTML страница лежит вместе с js файлом и текстовым файлом.
Пытаюсь получить доступ к элементам текстового файла подобным образом (в данном случае хотя бы к первому), но ничего не получается:
Код JavaScript
1
2
3
4
5
6
7
8
9
10
11
12
function ListFum(){
    $.ajax({
        type: 'POST',
        dataType: 'json',
        url: 'MyQuotes.txt',
        success: function(Fum){
            //var Fum = [];
            //var i = 0;
            $('.main_block_text').html(Fum.FumArray[1]);
        }
    });
}
Уже кучу форумов перелазил, скорее всего не правильно что то делаю, недавно начал изучать jQuery. Скажите что неправильно делаю и здорово было бы пример наглядный как это сделать, или хотя бы алгоритм. Спасибо!
28.08.2012, 15:21
AdAgent
Объявления
28.08.2012, 16:03   #2
Vovan-VE
Форумчанин
 
Регистрация: 10.01.2008
Сообщений: 15,063
Репутация: 12932 (6318)
Лучшие ответы: 143
Загрузить данные из JSON в виде txt файла в массив

Цитата Сообщение от JoQeR Посмотреть сообщение
Код JavaScript
1
{FumArray:[
скорее всего не правильно что то делаю
Ага, неправильно. В правильном JSON имена свойств объекта могут быть только строками:
Код JavaScript
1
{"FumArray":[
Добавлено через 35 секунд
Заглядните в консоль ошибок - там Вам скажут, что данное нечно не является валидным JSON.
Другие темы раздела
jQuery Обработка события radio checked
<input type="radio" id="r1" name="r" value="1"> <input type="radio" id="r2" name="r" value="0" checked="checked"> Как сделать, чтобы при выделении (checked) первого radio вылетал alert() ?
jQuery Плавно передвинуть влево элемент
У менять есть элемент div с id="qwe" по центру страницы. Мне нужно чтобы он передвинулся плавно влево на 100 пикселей. Как это реализовать?
28.08.2012, 16:09  [ТС]   #3
JoQeR
Форумчанин
 
Регистрация: 16.02.2012
Сообщений: 57
Репутация: 5 (5)
Загрузить данные из JSON в виде txt файла в массив

В смысле, что вот такого вида?

Код JavaScript
1
2
3
4
5
6
7
{
"Петров",
"Сидоров",
"Кравчук",
"Курилов",
"Ломов"
}
но так тоже не получается получить доступ к элементам как к массиву.

Дело в том, чтое если сделать таким образом:

Код JavaScript
1
2
3
4
5
6
7
{
"Fum1":"Петров",
"Fum2":"Сидоров",
"Fum3":"Кравчук",
"Fum4":"Курилов",
"Fum5":"Ломов"
}
А потом обратиться таким образом Fum.Fum1, то всё будет работать.

Как же мне сделать поочередный вывод каждого элемента в какой-нибудь элемент веб страницы, т.е. задать некий абстрактный индекс как в массивах? Например при каждом нажатии кнопки. Такое похоже без массива не сотворишь.
28.08.2012, 16:11   #4
Vovan-VE
Форумчанин
 
Регистрация: 10.01.2008
Сообщений: 15,063
Репутация: 12932 (6318)
Лучшие ответы: 143
Загрузить данные из JSON в виде txt файла в массив

Цитата Сообщение от JoQeR Посмотреть сообщение
В смысле, что вот такого вида?
Нет. Я же Вам написал, какую строку на что исправить.

Добавлено через 37 секунд
http://www.json.org/json-ru.html
28.08.2012, 16:11
AdAgent
Объявления
28.08.2012, 16:18  [ТС]   #5
JoQeR
Форумчанин
 
Регистрация: 16.02.2012
Сообщений: 57
Репутация: 5 (5)
Загрузить данные из JSON в виде txt файла в массив

Пока писал, Вы ответили) Спасибо большое, всё заработало.

Еще я не очень понял, то что я делаю - вывожу из текстого файла на html страницу с помощью jQuery это вообще правильно? Или надо было бы задействовать PHP для подобного извлечения информации?
28.08.2012, 16:21   #6
Vovan-VE
Форумчанин
 
Регистрация: 10.01.2008
Сообщений: 15,063
Репутация: 12932 (6318)
Лучшие ответы: 143
Загрузить данные из JSON в виде txt файла в массив

Цитата Сообщение от JoQeR Посмотреть сообщение
Или надо было бы задействовать PHP для подобного извлечения информации?
Со стороны клиента Вы просто запрашиваете у сервера инфу, и он Вам её отдаёт. Как клиенту, Вам должно быть совершенно всё равно, откуда сервер достаёт эту инфу - из файла, из скрипта или из-под шкафа.
Цитата Сообщение от JoQeR Посмотреть сообщение
Код JavaScript
1
$('.main_block_text').html(Fum.FumArray[1]);
вывожу из текстого файла на html страницу
Тогда бы уж .text() вместо .html():
Код JavaScript
1
$('.main_block_text').text(Fum.FumArray[1]);
28.08.2012, 16:23  [ТС]   #7
JoQeR
Форумчанин
 
Регистрация: 16.02.2012
Сообщений: 57
Репутация: 5 (5)
Загрузить данные из JSON в виде txt файла в массив

Спасибо, теперь понял)
11.09.2012, 15:59  [ТС]   #8
JoQeR
Форумчанин
 
Регистрация: 16.02.2012
Сообщений: 57
Репутация: 5 (5)
Загрузить данные из JSON в виде txt файла в массив / jQuery

Теперь возникли проблеммы с записью в JSON в сам файл, а не чтение. Не знал в какую тему написать в jQuery или PHP.

Как в таком же формате продолжить дозаписывать данные в массив JSON в txt файл? Я думаю, что извлекать сначала массив Array[] полностью будет неправильно, т.к. это займет очень много времени и ресурсов, если например записей будет не 5, а 5000 или еще больше.

Вопрос: каким способом можно дописать в массив Array[] в поля text и author данные? Чтобы просто дописать в конец массива, как в файл. Или же как дописать просто в текст файл в формате подобном JSON? И последний вопрос, как это реализовать с помощью AJAX, хотя бы примерный алгоритм? За раннее спасибо!

Пробовал дописать просто в файл в формате подобном JSON, но сразу возникла проблемма с отображением русских букв:

Код PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
<?php
//Получаем переменные при попытке опубликовать цитату
$text_JSON = $_POST["text"];
$author_JSON = $_POST["author"];
//$tema_JSON = $_POST["tema"];
//$email_JSON = $_POST["email"];
 
 
$list_text = array("author" => $author_JSON , "text" => $text_JSON);
$list_text_JSON = json_encode($list_text);
 
file_put_contents("My.txt", "Автор $author_JSON   "."   Текст $text_JSON \n", FILE_APPEND);
 
echo "Ваш отзыв будет опубликован сразу после проверки. 
     $list_text_JSON
     </br> Спасибо за Ваше время!"
 
?>
В результате $list_text_JSON выводится следующее:

Ваш отзыв будет опубликован сразу после проверки. {"author":"\u0410\u0432\u0442\u043e\u0440 \u043e\u0442\u0437\u044b\u0432\u0430!","text":"\u041e\u043f\ u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u0442\u044c \u043e\u0442\u0437\u044b\u0432!"}
Спасибо за Ваше время!"
11.09.2012, 15:59
Yandex
Объявления
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать новую тему

Похожие темы
Тема Раздел Автор Дата
Получить данные в формате json из txt файла
Не могу разобраться с проблемой. у меня есть ссылка на текстовый файл http://cdn.dota2.com//apps//570//scripts//items//items_game.3a0eb21e217379641c66b16ab3a5cf7ef55e9aa6.txt мне нужно получить из это файла данные в формате JSON, и что нибудь вывести. Подскажите как можно это сделать. ...
PHP для начинающих summerokk 10.01.2014 02:20
как считать данные из txt файла и записать их в массив float на языке с++
Помогите пожалуйста!!!Очень нужно! как считать данные из txt файла и записать их в массив float на языке с++.
Visual C++ марица 03.04.2013 20:28
Загрузить данные из файла в виде структур
Подскажите пожалуйста, есть структура с данными: struct Book{ char title; char author; short pages; double price; }; эти данные без проблем сохраняю в файл так: for (int i=0;i<n;i++)
C для начинающих delias 29.05.2012 06:52
Как из файла txt считать данные в массив?
Добрый день. С с++ у меня очень плохо, но срочно нужно сделать одну вещь. Есть файл file.txt, в нем располагается массив данных, к примеру 10*10 заполненый числами типа "1.40844094061486 -0.182515356102092 0.66699169427249". Нужно чтобы с++ открыл данный файл, и создал массив с размерностью в...
С++ для начинающих Tyken 15.09.2011 17:58
Загрузить массив из txt файла
:help: Всем привет! Нужна помощь. Есть неразрешимая задача — из текстового файла загрузить двумерный массив в «приложение» на C# .NET . Сделать это надо при инициализации. Образец данных в txt файле, элементы отделяются ; 20090119 161539;41.43;1 20090119 161540;41.43;1 20090119...
C# .NET iGOR_ 26.01.2009 16:38
Опции темы

Текущее время: 17:48. Часовой пояс GMT +4.

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.7 PL3
Copyright ©2000 - 2014, vBulletin Solutions, Inc.