jQuery,没有使用span

时间:2011-03-07 14:24:59

标签: javascript jquery html


如何让jQuery使用span id标签?

jQuery没有正确看到我的ID。当我使用没有跨度的h6标签时,它工作正常。我愿意使用div或其他一些工作。
谢谢,

<!DOCTYPE html PUBLIC "><html>
<head>
<script type="text/javascript" src="js/jquery-1.4.min.js"></script>
<script type="text/javascript">
$(function(){
$('#PlusMinus').click(function() {
    if($(this).val() == "+") {
        $(this).val("-");
    }else {
        $(this).val("+");
    }
    $("body h6").toggle();
    });
});
</script>

</head>
<body>
  <input type='button' value='+' id='PlusMinus'/>
  <!--WITH SPAN THE CODE BREAKS-->
      <span id="h6">Larger</span>
      <span id="h6" style="display: none">Smaller</span>
</body>
</html>

没有跨度
 h6较大/ h6
 h6 style =“display:none”&gt;较小/ h6

5 个答案:

答案 0 :(得分:3)

元素应具有唯一ID。此外,您的选择器是错误的(如果选择ID,您将在前面使用#)。尝试使用类,因为您想要影响多个项目:

<span class="h6">Larger</span>

$('.h6').toggle();

答案 1 :(得分:2)

您有多个具有相同ID的span元素。 id必须是唯一的。改为使用一个类。

答案 2 :(得分:1)

页面上不应该有两个具有相同ID的元素。您应该每个元素都有唯一的ID。

尝试这应该有效:

<html>
<head>
<script src="http://code.jquery.com/jquery-1.4.2.min.js"></script>
<script type="text/javascript">
$(function(){
$('#PlusMinus').click(function() {
    if($(this).val() == "+") {
        $(this).val("-");
    }else {
        $(this).val("+");
    }
    $("body .h6").toggle();
    });
});
</script>

</head>
<body>
  <input type='button' value='+' id='PlusMinus'/>
  <!--WITH SPAN THE CODE BREAKS-->
      <span class="h6">Larger</span>
      <span class="h6" style="display: none">Smaller</span>
</body>
</html>

答案 3 :(得分:0)

你有两个元素(你的跨度),其中“h6”作为ID,更改其中一个...... ID应该是唯一的。

答案 4 :(得分:0)

在我的情况下,问题是ID错误。是什么帮助了我:

$('#span.id').html('bla bla');

更改为

$('#span-id').html('bla bla');