为什么我的警报没有显示我希望它显示的DIV?

时间:2012-11-20 11:26:04

标签: javascript jquery ajax web

以下代码将屏幕上的警报发送为“未定义”。谨提醒html的{​​{1}}。

#div

我可以做一些像加载一样的事情,但我认为我不被允许:

    $.ajax({
        type: "POST",
        url: pageurl,
        dataType: "html",
        success: function(data){
            alert($(data).children("#div").html());
        }       
    });

我该如何解决这个问题?

更新:根据@Murali的建议,我尝试了以下内容,但仍然没有按照我的意愿行事:

    url: pageurl + ' #div'

2 个答案:

答案 0 :(得分:2)

尝试

更改此

 $(data).children("#div").html()

 $(data).find('#yourDivId').html()

注意:yourDivId - &gt;给出div的id。在您的代码中,您提到“#div”并不确定您的代码是否真的像<div id='div'>

代码我试过

Index.html中的

      $.ajax({
            type: "POST",
            url: 'page.html',
            dataType: "html",
            success: function (data) {                    
                $(data).find('#site-content').html();
            }
        });

在Page.html

 <head>
<title></title>
</head>
<body>
<div id="site-content">
    some data</div>
</body>
</html>

答案 1 :(得分:0)

你确定

吗?
$(data).children("#div") 

返回definded元素? 试试这个:

String($(data).children("#div").html());

或尝试

console.log($(data).children("#div").html());

对于放心的返回数据是字符串而不是空的。