3

我正在尝试制作一个按钮来替换 li 的内容。我在这里搜索了其他答案,但我得到了这个错误: Uncaught TypeError: Object li#element2 has no method 'replaceWith'

我试过 replaceWith、.html 和 .text,但它们都有相同的这是我的页面:

<html>
<head>

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>

<script>
$(document).ready(function(){
$("#theButton").click(function(){
("li#element2").replaceWith("This is the second element")
});
});
</script>

</head>
<body>

<h1 id="header">The document header.</h1>


<p>Value: <input type="text" id="theInput" value="" size=10>


<ul id="theList">
<li id="element1">Element 1
<li id="element2">Element 2
<li id="element3">Element 3
</ul>

<div id="theDiv"></div>

<input type="button" id="theButton" value="click me!""></p>


</body>
</html>
4

1 回答 1

12

错字

缺少$标志

$("#element2").replaceWith("This is the second element");
^

小提琴演示


NicoSantangelo评论

您也不需要 $("li#element2")它会更快,$("#element2")因为 id 是唯一的,因此不必使用标签选择器。


更好地使用.text()

小提琴演示

$(document).ready(function () {
    $("#theButton").click(function () {
        $("#element2").text("This is the second element")
    });
});


更正您的标记关闭li标签

<ul id="theList">
  <li id="element1">Element 1</li>
  <li id="element2">Element 2</li>
  <li id="element3">Element 3</li>
</ul>
于 2013-10-29T01:16:56.990 回答