Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   В div не подгружается контент с другой страницы (https://javascript.ru/forum/misc/39208-v-div-ne-podgruzhaetsya-kontent-s-drugojj-stranicy.html)

ms_AmneZia 20.06.2013 14:32

В div не подгружается контент с другой страницы
 
Есть div, куда должна вывестись инфа с другой страницы. Скрытый.
<div id="mnogostrok" style = "display:none">
</div>

Есть кнопка, на которую повешено действие, чтобы этот div стал видимым и подгрузилась инфа
<div id="but" >
<input type="button" id="butttt" value="Показать/скрыть" onclick= "details()"> 
</div>

И сама функция. Делает по нажатию div видимым и подгружает инфу.
<script>

function details()
  { 
if (document.getElementById("mnogostrok").style.display=='none') 
{document.getElementById("mnogostrok").style.display='block';
$('#mnogostrok').load('ссыль_на_страницу');}
else {document.getElementById("mnogostrok").style.display='none';};
return false;
    }
</script>

В чем беда: не div не заполняется! Alert выдает [Object object]. Ссыль рабочая.

P.S. Я полный нуб, поэтому прошу тапками не кидать)) Если есть что почитать по теме - буду только рада, наверняка что-то упустила.

skrudjmakdak 20.06.2013 14:38

а что вы получайте с сервера, можете показать?

cmd 20.06.2013 14:39

Если Вы используете jQuery, то не нужно писать
document.getElementById("mnogostrok").style.display

Достаточно
$('#mnogostrok').css('display')


Вот эти две строки
document.getElementById("mnogostrok").style.display='block';
$('#mnogostrok').load('ссыль_на_страницу');

можно объеденить:
$('#mnogostrok').load('ссыль_на_страницу').show();


Для дебага лучше использовать не alert(), а console.log()

skrudjmakdak 20.06.2013 14:41

яб переписал бы немного функцию)))
function details()
	{ 
	var obj = document.getElementById("mnogostrok");
	obj.style.display = (obj.style.display == 'block') ? 'none' : 'block';
	if (obj.style.display == 'none')
		$('#mnogostrok').load('ссыль_на_страницу');
	}

animhotep 20.06.2013 14:52

Цитата:

Сообщение от skrudjmakdak
obj.style.display = (obj.style.display == 'block') ? 'none' : 'block'

== http://api.jquery.com/toggle/

ms_AmneZia 20.06.2013 15:09

В итоге: div пустой, alert - Object object, в консоли ни на что не ругается.

Может быть такое, что в браузерной строке если - ссыль работает, а тут по каким-то причинам не определяется?

ms_AmneZia 20.06.2013 15:10

Журнал: [object Object] в консоли, вот.

danik.js 20.06.2013 15:17

Так ты в див пытаешься загрузить целиком страницу , включая доктайп, <head> и второй раз <body> ? Любитель матрешек?

danik.js 20.06.2013 15:18

Цитата:

Сообщение от ms_AmneZia
Журнал: [object Object] в консоли, вот.

Firebug поставь. Или в хроме подебажь - в нем отладчик поудобнее.

ms_AmneZia 20.06.2013 15:24

Цитата:

Сообщение от danik.js (Сообщение 257404)
Так ты в див пытаешься загрузить целиком страницу , включая доктайп, <head> и второй раз <body> ? Любитель матрешек?

Нет, я в див пытаюсь загрузить див. там#divname в конце

ms_AmneZia 20.06.2013 15:25

Цитата:

Сообщение от danik.js (Сообщение 257406)
Firebug поставь. Или в хроме подебажь - в нем отладчик поудобнее.

Увы, машина рабочая. Только IE, только хардкор. Да и использоваться будет только в нем.

skrudjmakdak 20.06.2013 15:41

а админа попросить поставить хром? если у вас прав нет..
ибо на ие отлаживать.. это я не знаю как описать.. вообщем гемор полный))

skrudjmakdak 20.06.2013 15:42

в ие есть отладчик но оч галимый.. вы будете матиться при отладке))

ms_AmneZia 20.06.2013 16:14

Цитата:

Сообщение от skrudjmakdak (Сообщение 257421)
в ие есть отладчик но оч галимый.. вы будете матиться при отладке))

Я уже))
Ставить хром, к сожалению, никто не будет. Контора такая, все через ж...

ms_AmneZia 20.06.2013 16:16

Почитав по теме, поняла, что это ie такой кривой. Ладно, будем бороться с ним =)

skrudjmakdak 20.06.2013 16:39

аа есть хром портабле. скачайте, он не требует установки..
забейте в гугле или яндексе

ms_AmneZia 21.06.2013 12:11

Ребят, подскажите еще, пожалуйста, может ли $.post() работать некорректно с кодировкой windows-1251? Обязательно ли перекодировать в UTF-8?

danik.js 21.06.2013 16:40

Цитата:

Сообщение от ms_AmneZia
может ли $.post() работать некорректно с кодировкой windows-1251?

Нет. Главное чтобы реально используемая кодировка совпадала с заявленной в хедере Content-Type

ms_AmneZia 03.07.2013 17:23

Вобщем, в итоге всё работает в таком виде:

jQuery.ajaxSetup ({cache: false});

$( function()
{
$('#div_kuda').load('ссыль #div_otkuda',
function(html, status, XMLHttpRequest)
{
},'html' );
} );


Часовой пояс GMT +3, время: 16:47.