如何使用Jquery在div内的div中加载iframe

时间:2013-06-24 12:17:17

标签: javascript jsp jquery

我的div是

<div id="chatMessageArea" class="divBorder">
    <div id="messageArea" class="divBorder"></div>
    <div id="enterMessage" class="divBorder"></div>
</div>

如何在ID为messageArea的div中加载新的iframe。

我的Jquery功能将是,

function createIframe(intxnId){

    var iframe = "<iframe id='ch_"+intxnId+"' src='" + contexPath + "/heartChat.jsp' ></iframe>";
    alert("iFrame Details : "+iframe);
    ("#chatMessageArea").find("messageArea").append(iframe);
}

我的提示结果是,

enter image description here

我得到了错误,

此行Object doesnot support this error中的

("#chatMessageArea").find("messageArea").append(iframe);

如何在ID为messageArea的内部div中使用JSP创建IFrame。

3 个答案:

答案 0 :(得分:4)

您的语法有点偏差,但您可以使用messageArea直接选择id,如下所示:

$("#messageArea").append(iframe);

只是为了解决您的原始问题,您错过了$选择器中的起始#messageArea,因此它应该是:

$("#chatMessageArea").find("#messageArea").append(iframe);

但同样,find毫无意义,因为您已经拥有messageArea的唯一ID(或者至少它应该是唯一的!)

答案 1 :(得分:1)

试试这个:

function createIframe(intxnId){
    // using $() to create the DOM object
    var iframe = $("<iframe id='ch_"+intxnId+"' src='" + contexPath + "/heartChat.jsp' ></iframe>");  
    alert("iFrame Details : "+iframe);
    // You have to add the '#' to search for an ID instead of an tagname
    $("#chatMessageArea").find("#messageArea").append(iframe);
} 

答案 2 :(得分:0)

我认为你从最后一行的开头就错过了$:     $( “#chatMessageArea”)找到( “信息区域”)附加(IFRAME);