2011-10-27 5 views
2

내 코드가 여기에 어떤 결과를 반환하지 않습니다 내가 원하는 결과를 반환하지 않습니다div의 html과 height & width를 추출하고 싶습니다.

var content = "<div id='content_dv'>"; 
     content += "<table border='1' style='height:auto;width:auto;'>"; 
     content += "<tr>"; 
     content += "<td>"; 
     content += "This is row 1"; 
     content += "</td>"; 
     content += "</tr>"; 
     content += "<tr>"; 
     content += "<td>"; 
     content += "This is row 2"; 
     content += "</td>"; 
     content += "</tr>"; 
     content += "<tr>"; 
     content += "<td>"; 
     content += "This is row 3"; 
     content += "</td>"; 
     content += "</tr>"; 
     content += "</table>"; 
     content += "</div>"; 

     alert($(content).find('#content_dv').html()); 
     alert("height "+$(content).find('#content_dv').height()); 
     alert("width " + $(content).find('#content_dv').width()); 

내 콘텐츠 변수는 일부 html이 있고 div id라는 데이터를 "content_dv"라고 표시하고 싶습니다. 또한 높이 &를 결정해야합니다. div의 너비와 높이 & div의 내부 html의 너비.

제 코드가 작동하지 않는 이유를 알려주십시오. 내 코드에서 무슨 잘못이야. 덕분에

답변

2

중요한 것은 여기에 콘텐츠를 추가하거나 DOM에 넣어야한다는 것입니다. 여기에 그것이 나를 위해 작동하는 방법

var content = "<div id='content_dv'>"; 
    content += "<table border='1' style='height:auto;width:auto;'>"; 
    content += "<tr>"; 
    content += "<td>"; 
    content += "This is row 1"; 
    content += "</td>"; 
    content += "</tr>"; 
    content += "<tr>"; 
    content += "<td>"; 
    content += "This is row 2"; 
    content += "</td>"; 
    content += "</tr>"; 
    content += "<tr>"; 
    content += "<td>"; 
    content += "This is row 3"; 
    content += "</td>"; 
    content += "</tr>"; 
    content += "</table>"; 
    content += "</div>"; 

    $("body").append(content); 

    alert($('#content_dv').html()); 
+0

을 사용할 수 없습니까? 나는 몸에 추가하고 싶지 않다. 내가 사용하고 잘 작동하는 코드가 있습니다. 나는 여기에 코드를 제공하고있다. jQuery.ajax (type : "POST", url : "Login_LightFace.aspx/GetHtml", data : {}, contentType : "application/json; charset = utf-8", dataType : "json", 성공 : sHtml = data.d; modal.load (jQuery (sHtml) .find ('# frm') .html());} 오류 : function (XMLHttpRequest, textStatus, errorThrown) {alert (textStatus);}}); –

+0

여기서 사용하는 .load() 메서드는 호출 한 html 요소에 데이터를로드합니다. 나의 예에서 이것은 간단한 예일 뿐이다. DOM에 새 구조를 추가하는 방법은 자유롭게 지정할 수 있습니다. [.load] (http://api.jquery.com/load/)에 대한 자세한 정보는이 부분을 참조하십시오. – herrlado

1

코드에서 .find('#content_dv') 만 제거하면됩니다. 은 당신이 할하려는 것은 ID content_dv와 요소 내부 content_dvID를 가진 요소를 찾는 것입니다, 당신은 아직 주입되지했습니다에 대한)

PS가 귀하의 높이와 너비가 0이 될 것입니다 당신의 새로운 요소를 기존 페이지 마크 업에 추가하십시오.

+0

신체에 물건을 추가하지 않고도 작동하지 않을 수 있습니까? 나는 몸에 추가하고 싶지 않다. 내가 사용하고 잘 작동하는 코드가 있습니다. 나는 여기에 코드를 제공하고있다. jQuery.ajax (type : "POST", url : "Login_LightFace.aspx/GetHtml", data : {}, contentType : "application/json; charset = utf-8", dataType : "json", 성공 : sHtml = data.d; modal.load (jQuery (sHtml) .find ('# frm') .html());} 오류 : function (XMLHttpRequest, textStatus, errorThrown) {alert (textStatus);}}); –

+0

귀하의 질문에 분명하지 않습니다. 너비와 높이는 절대적인 것은 아니지만 페이지 요소와 관련이 있습니다. 또한 스타일은 부모와 잠재적으로 부모에게 적용되므로 추상 용어로는 witdh와 height가 없습니다. 몸에 물건을 추가하지 않고 – mamoo

관련 문제