jquery $(document).ready并在加载时读取div内容

时间:2011-09-28 14:28:39

标签: jquery

任何人都知道为什么这不起作用?

CSS

#test1
{
    height: 50px;
    border: 1px solid black;
}

#test2
{
    height: 50px;
    color: red;
    border: 1px solid black;
}

HTML

<div id="test1">
    test<br />
    Text
</div>
<br />
<div id="test2">
</div>

jquery的

$(document).ready(function(){
    if($("#test1").val() != "")
    {
        $("#test2").val($("#test1").val());
        $("#test2").val("");
    }
});

此处还有一个代码链接:http://jsfiddle.net/FDe9N/4/

$(document).ready 上的

在执行代码之前网站是否完全加载?如果是这样,那意味着div应该已经包含了文本?代码没有点击 if 语句中的代码,好像div是空的,实际上它确实有文本...提前谢谢!

2 个答案:

答案 0 :(得分:4)

val()仅获取或设置表单元素的值。由于您使用的是<div>元素,因此您应该使用text()html()代替:

$(document).ready(function() {
    if ($("#test1").html() != "") {
        $("#test2").html($("#test1").html());
        $("#test1").empty();
    }
});

答案 1 :(得分:1)

使用.html()而不是.val()。 Val用于表单元素。