-4

我需要在列表中添加一个项目:

<body>
<ul id="ulBack">
   <li><img src="bridges/01.png"/></li>
   <li><img src="bridges/02.jpg"/></li>
   <li><img src="bridges/03.jpg"/></li>
</ul>

<script>
jQuery('#ulBack').append('<li><img src="bridges/04.jpg"/></li>');

var list = $('#ulBack li');
alert (list.length);
</script>
</body> 

应该是4,但结果还是3

4

3 回答 3

2

我认为这会很好地工作:

var myLi = $("<li><img src='bridges/04.jpg'/></li>");

myLi.appendTo($("#ulBack"));

:)

于 2013-07-20T16:27:17.807 回答
1

你加载了 jQuery 吗?

如果是这样,您是否将脚本包含在 $(document).ready() 中?

<script>
 $(document).ready(function() {
  jQuery('#ulBack').append('<li><img src="bridges/04.jpg"/></li>');

  var list = $('#ulBack li');
  alert (list.length);
 });
<script>

如果没有,您可能正在尝试在 DOM 准备好之前执行此操作,并且您的可能<ul>还不存在。

于 2013-07-20T16:30:14.543 回答
1

您的代码工作正常,我试过了,我最好的猜测是您忘记将 jquery 库添加到您的代码中,因为这可以正常工作:

    <!DOCTYPE HTML>
<html>
    <head>

        <title>append test</title>

        <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>

    </head>
    <body>

        <ul id="ulBack">
           <li><img src="bridges/01.png"/></li>
           <li><img src="bridges/02.jpg"/></li>
           <li><img src="bridges/03.jpg"/></li>
        </ul>

        <script>
            jQuery('#ulBack').append('<li><img src="bridges/04.jpg"/></li>');

            var list = $('#ulBack li');
            alert (list.length);
        </script>

    </body>
</html>
于 2013-07-20T16:52:07.200 回答