XML 过滤器应用于非 XML 值

发布于 2024-12-11 06:04:33 字数 825 浏览 0 评论 0原文

我刚刚开始学习js,需要你的帮助。

我有以下代码:

<html>
<head>
<title>test</title>
    <script src="jquery-1.4.2.min.js" type="text/javascript"></script>
    <script type="text/javascript"> 
        $(function () { 
            $('.test1').(function(){
                    this.each(function () {
                    var a = $(this);
                    alert(a);
                });

            });
        });
    </script>
</head>
<body>
<pre class="test1">
blabla1
blabla2
blabla3
</pre>
</body>
</html>

通过此代码,我想了解“each”如何分割预标记的内容。 Firebug 返回以下错误消息:

XML 过滤器应用于非 XML 值

该错误是由以下命令引起的:

$('.test1').(function(){...

我做错了什么?

非常感谢!

I am just starting to learn js and need your help.

I have following code:

<html>
<head>
<title>test</title>
    <script src="jquery-1.4.2.min.js" type="text/javascript"></script>
    <script type="text/javascript"> 
        $(function () { 
            $('.test1').(function(){
                    this.each(function () {
                    var a = $(this);
                    alert(a);
                });

            });
        });
    </script>
</head>
<body>
<pre class="test1">
blabla1
blabla2
blabla3
</pre>
</body>
</html>

With this code I wanted to find out how "each" will split the content of the pre-tag. Firebug returns following error message:

XML filter is applied to non-XML value

The error is caused by this command:

$('.test1').(function(){...

What am I doing wrong?

Many thanks in advance!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

笑咖 2024-12-18 06:04:33

如果您确实想了解 .each 在示例中的工作原理,请将代码更改为:

$(function () { 
    $('.test1').each(function(){
        var a = $(this);
        alert(a.html());
    });
});

但是,就像 @James_Johnson 之前所说, .each 函数中的代码只会执行一次,因此您可能会

blabla1
blabla2
blabla3

在警报消息中

看到要使 .each 迭代,您必须执行以下操作

<html>
    <head>
        <title>test</title>
        <script src="jquery-1.4.2.min.js" type="text/javascript"></script>
        <script type="text/javascript"> 
                $(function () { 
                    $('.test1 p').each(function(){
                       var a = $(this);
                       alert(a.html());
                    });
                });
        </script>
    </head>
    <body>
        <pre class="test1">
           <p>blabla1</p>
           <p>blabla2</p>
           <p>blabla3</p>
        </pre>
    </body>
</html>

If you really want to see how .each works in your example, change code to:

$(function () { 
    $('.test1').each(function(){
        var a = $(this);
        alert(a.html());
    });
});

However, like @James_Johnson said earlier, the code in .each function will only execute once, so you are likely to see

blabla1
blabla2
blabla3

in your alert message

To make .each iterate, you have to do sth like

<html>
    <head>
        <title>test</title>
        <script src="jquery-1.4.2.min.js" type="text/javascript"></script>
        <script type="text/javascript"> 
                $(function () { 
                    $('.test1 p').each(function(){
                       var a = $(this);
                       alert(a.html());
                    });
                });
        </script>
    </head>
    <body>
        <pre class="test1">
           <p>blabla1</p>
           <p>blabla2</p>
           <p>blabla3</p>
        </pre>
    </body>
</html>
紫南 2024-12-18 06:04:33

 标记内的唯一内容是文本,因此在这种情况下不需要 each()。尝试这样的事情:

<script type="text/javascript">  
    $(function (){  
        alert($(".test1").text());
    }); 
</script> 

The only thing inside of the <pre> tag is text, so there's no need for each() in this case. Try something like this instead:

<script type="text/javascript">  
    $(function (){  
        alert($(".test1").text());
    }); 
</script> 
我不在是我 2024-12-18 06:04:33

如果你真的想把文字分解,你可以试试这个。

$.each( $('.test1').text().split('\n'), function(index,value){ 
    alert( value ); 
});

If you really want the text broken down, you can try this.

$.each( $('.test1').text().split('\n'), function(index,value){ 
    alert( value ); 
});
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文