【问题标题】:Append/Prepend/ jQuery issue追加/前置/ jQuery 问题
【发布时间】:2012-08-06 22:56:39
【问题描述】:

更新:该脚本现在(部分)工作,但它无法加载一些内容中包含 Javascript 的 XML 小工具文件;此外,有些加载得很好,但除内容之外的任何其他内容仍未显示。我想知道这是否只能在 PHP 而不是 jquery 中完成。

我有用于加载和显示 XML 小工具(例如来自 iGoogle 的那些)的代码。它现在是我的创作,事实上我什至不记得我从哪里得到它。

无论如何,如您所见,代码从 XML 文件中读取 Content 并将其显示在 combo1 范围中。这按预期工作。

问题是我在跨度之前或之后写的任何内容都不会显示。或者它显示一小部分,但立即显示内容并隐藏其他所有内容。我希望 “我希望此文本可见!!!” 是可见的。我怎样才能做到这一点?我不在乎它是否只是文本,或者 jQuery 也可以使用另一个技巧来显示它(我已经尝试了一些,但没有工作),或者“我的”代码可能有问题并且需要一些更改。

我只知道我需要帮助。

附:如果您需要对此进行测试,请使用 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>

【问题讨论】:

  • 我们能得到更多信息吗?可以在 jsfiddle.net 上设置一个示例吗?文本不必在元素内部可见。如果元素正在页面上呈现,它应该显示,除非父元素被告知隐藏它。例如,您可以将纯文本写入没有 div 的 标记,它会显示出来。我们需要知道文本是否正在被读取,AJAX 是否未正确触发,等等...
  • 当然可以,但这无济于事,因为 .xml 文件必须与页面位于同一域 (jsfiddle.net/G2sZz)。我认为最好在计算机上创建一个 html 文件,使用此代码,并从 Google 将 hello.xml 加载到同一文件夹中(见上文)。
  • 文本“我希望此文本可见!!!”确实显示了一秒钟,但是在脚本加载 xml 文件后,它被替换为这个 (?!) ... 在我的头上。
  • 我刚刚测试了它(使用 Firefox)并且它有效。我刚刚添加了 jQuery 并将“daily-girls.xml”替换为“hello.xml”
  • 那些女孩在分散我的 jquery 的注意力

标签: javascript jquery html append prepend


【解决方案1】:

好的,我正在回答我自己的帖子(LOL),也许这个帖子会像这样关闭。 上面的代码,在我的第一个问题中,终于起作用了。但是,它取决于 xml 文件 Content。在我用数十个 xml 文件对其进行测试后,我得出结论,并非所有这些文件都允许显示其他元素。对于 xml 文件,那些在 Content 中包含 javascript 的脚本将不允许显示任何其他内容,仅显示 xml 文件的内容,而不会显示其他内容。 我想这些是 javascript 的限制,为了获得更好的结果,应该使用 PHP 来完成我的要求。

【讨论】:

    猜你喜欢
    • 2018-01-06
    • 2014-01-13
    • 2012-09-17
    • 2013-10-21
    • 1970-01-01
    • 1970-01-01
    • 2010-11-03
    • 1970-01-01
    • 2011-09-29
    相关资源
    最近更新 更多