Jquery每个函数,if语句不起作用

时间:2011-07-21 16:19:23

标签: jquery if-statement each

<head>
    <title>Untitled Page</title>
    <script src="jquery-1.4.1.js"></script>
    <script type="text/jscript">
        function changecolor() 
        {


            $('li').each(function() 
            {
                var sval = $(this).text();
                //alert(sval);
                if (sval == "Rose") 
                {
                    alert(sval);
                    $(item).css('backgroundcolor', 'red');
                }

            });
        }
    </script>
</head>
<body>
    Select your fraglance : 
    <ul>
        <li>Rose</li>
        <li>White Jasmine</li>
        <li>Yellow Sunflower</li>
        <li>Pink Lotus</li>
        <li>White Daisy</li>
    </ul>
    <button id="text"  onclick="changecolor()">Change Color</button>
</body>
</html>

4 个答案:

答案 0 :(得分:1)

item未在某处定义。

看看这个例子: http://jsfiddle.net/pepMJ/

答案 1 :(得分:0)

您可能想要使用background-color,因为那是CSS名称。

$(item).css('background-color', 'red');

答案 2 :(得分:0)

js中定义的项目在哪里?可能是一个错误。试试这个

<script type="text/jscript">
        function changecolor() 
        {


            $('li').each(function() 
            {
                var sval = $(this).text();
                //alert(sval);
                if (sval == "Rose") 
                {
                    alert(sval);
                    $(this).css('backgroundcolor', 'red');
                }

            });
        }
    </script>

答案 3 :(得分:0)

我想你忘记了.each中的项目

$('li').each(function(i, item)