如何从div中检索值

时间:2010-12-23 10:22:41

标签: jquery

这是我的html和jquery,当页面加载时,我应该得到一个值为10的警告框,但我得不到任何结果。我做错了什么?

<html>
<head>
    <script src="js/jquery-1.4.4.min.js" type="text/javascript"></script>

    <script type="text/javascript">

    val = $("#t").text();
    alert(val);

    </script>
</head>
<body>

    <div id="t">10</div>
</body>
</html>

5 个答案:

答案 0 :(得分:3)

尝试并始终将代码包装在document填充元素时运行,如下所示:

<script type="text/javascript">
$(function() {
  val = $("#t").text();
  alert(val);
});
</script>

...否则,当$("#t")运行以选择id="t"元素时,它会运行...但元素不在DOM中以便查找。

答案 1 :(得分:1)

HTML

<div id="t">10</div>

在脚本之后,脚本会在找不到任何内容之前运行。

您必须更改订单

<div />
<script />

或使用jQuery.ready

<强> Example on jsBin

答案 2 :(得分:0)

您正在尝试从尚不存在的元素中检索某些内容。最简单的解决方案是将您的JS代码移到HTML的底部(就在</body>之前)。

另一个解决方案是将您的代码“包装”在jQuery ready事件中:

$( document ).ready ( function () {
    val = $("#t").text();
    alert(val);
} );

当准备好使用。操作时,将触发就绪事件。

答案 3 :(得分:0)

试试这个

<div id="t">10</div>

val = $("#t").html();
    alert(val);

答案 4 :(得分:0)

脚本在浏览器处理div之前执行。

div还没有在DOM中。

您可以将scrip标记移动到div下面,也可以将代码包装在on ready函数中:

<script type="text/javascript">
    $(function () {
        val = $("#t").text();
        alert(val);
    });
</script>