Использование функции jQuery или Ajax для извлечения текста с другой страницы - PullRequest
0 голосов
/ 22 июля 2011

Короткая история о том, что наша CMS ограничивает нас использованием исключительно html / js. Я создаю страницу динамического графика, которая содержит много данных, которые будут обновляться ежемесячно. На сервере есть отдельная php-форма, которую сотрудник будет заполнять, контент хранится в базе данных, и есть еще один php-файл, который отображает информацию. Jquery / Ajax должен извлечь эту информацию с внешней страницы php, что я сделал в другом проекте. Эта разница на этот раз заключается в том, что мне нужно нацеливать определенные части кода для извлечения, потому что результаты будут помещаться в переменную javascript для использования при заполнении графика.

Со мной так далеко? Что мне нужно, чтобы сделать jquery / ajax, так это нацелить определенные идентификаторы div на заполненную страницу php, чтобы я мог перенаправить их на соответствующую переменную js.

Я смотрел на jston, но не очень силен с JS, и поэтому это похоже на греческий. Мысли, идеи, предложения?

EDIT:

Я пробовал этот код:

$('#hiddenDiv').load('test.php #newdata');

Что ничего не импортировало, хотя на странице test.php есть текст с тегом div с идентификатором "newdata".

Ответы [ 2 ]

3 голосов
/ 22 июля 2011

Вы можете использовать функцию jQuery load:

$('#loadIntoMe').load('somepage.php #onlyLoadMe');

Если в URL есть пробел, предоставленный в качестве параметра для функции load, предполагается, что он является селектором jQuery и используется для извлечения указанных элементов, а не для возврата всего документа. См. документы для получения дополнительной информации.

Обновление (на основе комментариев)

Чтобы сохранить результат в переменной, вы можете использовать скрытую div и функцию обратного вызова:

var yourVariable;
$('#loadIntoMe').load('somepage.php #onlyLoadMe', function() {
    yourVariable = $(this).html();
});
0 голосов
/ 22 июля 2011

Все библиотеки JavaScript, которые я использовал, требовали, чтобы им был передан объект javascript. В этом случае я бы использовал jQuery $.get для получения json_encode d набора данных.

PHP

<?php
header('Conent-type: application/json');
$array_of_data = array(
    'axes1' => array( // data goes here
    ),
    // etc and so on
);
echo json_encode($array_of_data);
?>

JS

$.getJSON('/url/to/php.php', function(data) {
    // console.log(data);
    // generate graph from data
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...