将内容ajax加载到html弹出窗口中

时间:2015-04-02 19:51:31

标签: javascript php jquery html ajax

所以我试图用IMDb API做这件事。当你按下电影标题时,它应该显示一个弹出窗口,其中包含有关该电影的一些信息。我一直在做一些事情,但我不知道如何继续。 如何将检索到的电影数据发送到我创建的HTML弹出窗口中?

所以,这是我的HTML代码:

<!DOCTYPE html>
<html>
<head lang="en">
    <meta charset="UTF-8">
    <title>Plugin</title>
    <link rel="stylesheet" href="css/style.css"/>

</head>
<body>

<h1>...</h1>

<div id="container">

    <p>
        Lorem ipsum dolor sit amet, consectetur adipiscing elit.
        <span class="movie" onclick="window.open('js/popup.js', 'imdbData','width=700,height=200');">The Shawshank Redemption </span>
        sed metus tortor, condimentum at mi non, scelerisque bibendum ante.
        Suspendisse dictum eget turpis nec condimentum. 
        fermentum mauris.
    </p>

</div>


</body>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script>
<script src="js/main.js"></script>
</html>

我的PHP文件如下所示:

<?php

$jsonText = file_get_contents('http://www.omdbapi.com/?i=tt0111161');

$imdb = json_decode($jsonText, true);


$results[] = [
    'Title' => $imdb['Title'], 'Year' => $imdb['Year'], 'imdbRating' => $imdb['imdbRating']
];

echo json_encode($results);
?>

最后我的main.js :(实际上并非如此)

function getJson() {
    $.ajax({
        dataType: "json",
        url: 'imdb.php',
        success: 
    });
}

2 个答案:

答案 0 :(得分:0)

不确定“popup”是什么,但我们假设这个“popup”有一个id为“movie-title”的元素,你希望用你的数据填充Title属性:

function getJson() {
    $.ajax({
        dataType: "json",
        url: 'imdb.php',
        success: function (data) {
             $('#movie-title').html(data.Title)
        }

    });
}

答案 1 :(得分:0)

我会以不同的方式做到这一点。 首先,我将在php文件中准备所有弹出窗口(这对我来说更方便)。 然后创建弹出div .e.g。 id my_popup

function show_popup() {
$.ajax({
    dataType: "html",
    url: 'imdb.php',
    .done(function( msg ) { 

$(&#34;#my_popup&#34)。HTML(MSG)     });

});

}