Jquery 从脚本标签获取文本时出现问题?

标签 jquery

我有这个小 HTML 文档:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
    <head>
        <title>HTML Test</title>

        <script type="text/javascript" src="jquery-1.3.2.min.js"></script>

        <script type="text/javascript">
            $(document).ready(function()
            {
                $("script").each(function()
                {
                    if($(this).attr("type") == "code")
                    {
                        alert($(this).text());
                    }

                });
            });
        </script>

    </head>

    <body>

<script type="code">
var Text = "Text";
</script>

    </body>
</html>

当使用 Firefox 运行时,警报显示 <script type="code"> 的文本内容标签。当在 IE8 中运行时,它不显示任何内容。

你知道为什么吗?我被难住了。

最佳答案

使用 .html() 可能会更幸运,如果这不起作用,请尝试 this.innerHtml。不过我没有对此进行测试。

不过,我确实对您的代码有另一个提示。如果您只需要代码类型的脚本,则可以使用单个选择器,而不必检查循环中的属性:

$("script[type=code]").each(function() {
    alert($(this).html());
    alert(this.innerHtml);
});

关于Jquery 从脚本标签获取文本时出现问题?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1897984/

相关文章:

jquery - Uncaught ReferenceError : FixedColumns is not defined

javascript - 触摸选择框时显示两次的选择选项

javascript - Fancybox 2 beforeLoad 和 afterClose 在事件时不触发隐藏/显示 div

jquery - 当我在页脚中添加在线 jquery 库时,bbcode 不起作用

javascript - 如何将 javascript 外部文件(如 bootstrap 、 jQuery)添加到reactjs应用程序中

javascript - 使用 Knockout 更改自定义 jquery 插件的设置

Javascript 和 jQuery 数组未定义

javascript - 获取表中更改的特定元素

jquery - CSS 使两个元素具有相同的高度,而不管屏幕大小

javascript - 无法通过 Object.property 访问 Javascript 中的 JSON 元素