我显然对jquery很陌生,所以我会很感激应该对简单的东西有所帮助。我有以下网页
<html><body>
<div id="mytitle1">Hello</div>
<p/>
<div id="mytitle2">World</div>
</body></html>
这很好。但是如果我尝试按如下方式在jquery中设置值,则只渲染第一个div。当我调试时,我看到两个div都被设置但第二个被删除了#39;来自渲染的html页面。 (渲染后检查页面我只看到第一个div)。
<body>
<div id="title1" />
<p />
<div id="title2" />
<script type="text/javascript">
$(showtitle);
function showtitle() {
$("#title1").text("Hello");
$("#title2").text("World"); };
是什么给出了?
答案 0 :(得分:3)
调用该函数的语法不正确。您当前正在将函数引用放在jQuery对象中,而只是想通过在其名称后放置()
来调用它。
您还需要将代码包装在document.ready事件处理程序中,以确保它仅在DOM中的#titleX
元素可用时运行。试试这个:
$(function() {
showtitle()
function showtitle() {
$("#title1").text("Hello");
$("#title2").text("World");
};
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="title1"></div>
<p></p>
<div id="title2"></div>
&#13;
另请注意,<div>
和<p>
元素不是自动关闭的,您需要添加单独的</div>
和</p>
来关闭它们,如上例所示。
答案 1 :(得分:1)
您的HTML出错。你没有关闭div。你必须在两个div上使用结束标记。例如:</div>
。
另外,没有</p>
之类的东西。 <p>
标记用于wrtinig段落,并且应该打开一个结束标记。
在这里试试这段代码(它对我有用):
<div id="title1"></div>
<div id="title2" ></div>
<script type="text/javascript">
$(showtitle);
function showtitle() {
$("#title1").text("Hello");
$("#title2").text("World");
};
</script>