2013-05-13 5 views
-3

Это моя главная страницаЗагрузите содержимое внешней страницы в div?

<html> 

<head> 
    <title></title> 
    <style> 
    #exp{ 
    height: 100%; 
    width:100%; 
    position: absolute; 
    left:0; 
    top:0; 
    background:#00FF00; 
    } 

    </style> 
    <script src="scripts/jquery.js"></script> 
    <script> 
    $(function(){ 
    $("#exp").load('aboutus.html'); 

    }) 
    </script> 

</head> 

<body> 
<div id="exp"> 

</div> 
</body> 

</html> 

Я хочу, чтобы загрузить этот контент на странице aboutus.html Содержание в этой странице

<div style="height:100%;width:100%;position:absolute;left:0px;top:0px">Hai</div> 

Я попытался груз, получить, .html и т.д., но ни один из них не работает. Я не хочу, чтобы включить PHP

Методы Я попытался

$("#exp").load('aboutus.html'); 
$("#exp").get('aboutus.html'); 
$("#exp").html(url(aboutus.html')); 
+0

Любые ошибки в консоли браузера? Если вы посмотрите на вкладку net, вы получаете 404? – epascarello

+0

Почему бы не использовать iframe? – CodeBird

+0

Вы получаете ошибки? проверьте свою консоль ... и убедитесь, что главная страница и aboutus.html находятся в одной папке – bipen

ответ

0

Один из способов сделать это с помощью вызова AJAX с помощью jquery.

Просто заверните свою страницу в функцию обратного вызова JSON. Для подробно см ниже

Заглавная страница кодекса

<html> 
<head> 
<title></title> 
<style> 
#exp { 
height: 100%; 
width:100%; 
position: absolute; 
left:0; 
top:0; 
background:#00FF00; 
} 
</style> 
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script> 
<script> 
jQuery(function(){ 
jQuery.getJSON('about.php?callback=?',function(data){ 
if(data.status == 'success') { 
     jQuery('#exp').html(data.html); 
    } 
}); 
}) 
</script> 
</head> 
<body> 
<div id="exp"> </div> 
</body> 
</html> 

about.php страницы

<?php 
$html .=<<<HTML 
    <div style="height:100%;width:100%;position:absolute;left:0px;top:0px">Hai</div> 
HTML; 
$strippedHTML = str_replace(array("\r\n", "\r", "\n", "\t"), ' ', $html); 
echo $_GET['callback'] . '({"status":"success", "html":"' . addslashes(trim($strippedHTML)) . '"})'; 
?> 
0

Наиболее распространенной причиной отказа является локальная проверка: если открыть главный файл, используя file:// то другой файл, по-видимому, из другой домен и операция запрещена.

От the .load documentation:

Дополнительные примечания:

Из-за ограничений безопасности браузера, большинство запросов "Ajax" могут к одной и той же политики происхождения; запрос не может успешно получить данные из другого домена, субдомена или протокола.

Для проверки этой страницы необходимо использовать http-сервер.

Кроме этого, и если у вас есть файл jquery.js, ваш код работает: test it online.

Смежные вопросы