0

javascript を介してウィキペディアのインフォボックスにアクセスする際のエラーはどこにありますか?
(私は codeigniter フレームワークを使用しています)

ページコントローラー

    $data = array(
               'title' => 'My Title',
               'country' => 'My Heading'
          );

    $countrycodes = ['au', 'us'];
    $countrynames = ['Australia', 'United_States'];
    error_log(print_r($page, TRUE)); 
    $key = array_search($page, $countrycodes);
    error_log(print_r($key, TRUE)); 
    if($key !=null){
    $data['country'] = $countrynames[$key];
    }

    $this->load->helper('url');
    $this->load->helper('utility');

    $this->load->view('templates/header', $data);
    $this->load->view('pages/'.$page, $data);
    if(!is_null($key)){
    $this->load->view('templates/infobox', $data);  
    }
    $this->load->view('templates/footer', $data);

auページ

...

<div style =" position:absolute;top:90%; background: red;">
<?php echo $country; ?></div> // prints Australia.
<script type="text/javascript" src="<?php echo base_url(); ?>assets/js/country.js"></script>
// variable isnt formed yet to be picked up  by javascript.

インフォボックス テンプレート

<div class='info-box' id="<?php echo $country; ?>">
    <table id ="result">
</div>

国 JavaScript

$(window).load(function(){
        var searchTerm= $(".info-box").attr("id");

        alert(searchTerm);
        //searchTerm= "Australia";

        var url="http://en.wikipedia.org/w/api.php?action=parse&format=json&page=" + searchTerm+"&redirects&prop=text&callback=?";
        $.getJSON(url,function(data){
          wikiHTML = data.parse.text["*"];
          $wikiDOM = $("<document>"+wikiHTML+"</document>");
          $("#result").append($wikiDOM.find('.infobox').html());
        });
});

body onload = "function();" も試しました

ブラウザのソース

4

1 に答える 1

0

本体 onload = "function();" を使用する 働きました。ライン入れるの忘れてガンガン飛ばしたと思う。

function loadWiki(){
        var searchTerm= $(".info-box").attr("id");

        var url="http://en.wikipedia.org/w/api.php?action=parse&format=json&page=" + searchTerm+"&redirects&prop=text&callback=?";
        $.getJSON(url,function(data){
          wikiHTML = data.parse.text["*"];
          $wikiDOM = $("<document>"+wikiHTML+"</document>");
          $("#result").append($wikiDOM.find('.infobox').html());
        });
    }
于 2013-08-17T08:58:12.557 に答える