-1

更新: スクリプトは現在 (部分的に) 動作しますが、コンテンツに Javascript を含む一部の XML ガジェット ファイルの読み込みに失敗します。また、正常にロードされたものもありますが、コンテンツ以外のものはまだ表示されていません。これはjqueryではなくPHPでしかできないのかな。

XML ガジェット (iGoogle のものなど) を読み込んで表示するために使用するコードがあります。それは今では私の作品です。実際、どこから入手したかさえ覚えていません。

とにかく、ご覧のとおり、コードContentは XML ファイルから を読み取り、それをcombo1スパンに表示します。これは想定どおりに機能します。

問題は、スパンの前後に書いたものが表示されないことです。または、一部だけ表示されますが、すぐにコンテンツが表示され、他のすべてが非表示になります。「このテキストを表示したい!!!」見えるように。どうやってやるの?それが単なるテキストであるか、jQuery がこれを表示する別のトリックを実行できるか (いくつか試してみましたが、機能しませんでした)、または「私の」コードに問題があり、いくつかの変更が必要かどうかは気にしません。

私が知っているのは、助けが必要だということだけです。

PS これをテストする必要がある場合は、Google の hello ガジェットを使用してください: http://www.google.com/ig/modules/hello.xml - ローカルに保存する必要があります。スクリプトは外部ファイルを読み取らないと思います。

わかりました、参考までに、私はこれを持っています:

<?PHP
$xml = $_GET['xml'];
echo "<html><head></head><body><script src='http://code.jquery.com/jquery.min.js' type='text/javascript'></script>
        <script type='text/javascript'>
        $(document).ready(function(){
    function loadfail(){
        alert('Error: Failed to read file!');
    }
    function parse(document){
        $(document).find('Module').each(function(){
           $('.combo1').append(
            '' + $(this).find('Content').text() +
            ''
           );
        });
    }
    $.ajax({
        url: '$xml',
        dataType: 'xml',
        success: parse,
        error: loadfail
    });
});
</script><span class='combo1'></span>";
?>Text that I'd like to show</body></html>
4

1 に答える 1

0

よし、自分の投稿に答えてるよ(笑)、このスレはこのまま終わるかも。上記のコードは、私の最初の質問で、最終的に機能します。ただし、xml ファイルContentに依存します。数十の xml ファイルでテストした結果、すべてのファイルで他の要素を表示できるわけではないことがわかりました。xml ファイルの場合、コンテンツに JavaScript が含まれている場合、スクリプトはそれ以外の表示を許可せず、xml ファイルのコンテンツのみを表示し、他には何も表示しません。これらはJavaScriptの制限であり、より良い結果を得るには、PHPを使用して私が求めたことを実行する必要があると思います.

于 2012-08-13T14:06:27.897 に答える