2012-02-21 3 views
0

나는 document.write를 사용하여 계산 결과를 출력하기 위해 다음 코드를 사용하려고했지만, IE는 결과 만 준다. 다른 브라우저는 양식을 돌려줍니다. 그리고 나는 이유를 알 수 없다? 나는 document.write()를 사용하려고 노력했다. IE는 출력을 준다.

<html> 
<head> 
<script type="text/javascript"> 
function main() 
{ 
    var area=form1.height.value*form1.base.value/2; 
    this.document.write("<p>The area is "+area+"</p>"); 
    //return form1.area.value=area; 
} 
</script> 
</head> 
<body> 
<h2>Triangle Area</h2> 
<form method="get" name="form1" id="form1"> 
    <p>Height: 
    <input name="height" type="text"> 
    </p> 
    <p>Base: 
    <input name="base" type="text"> 
    </p> 
    <p> 
    <input type="submit" name="Submit" value="Calculate" onclick="main()"> 
    </p> 
</form> 

</body> 
</html> 

답변

0

당신은 그런 document.write을 사용할 수 없습니다. 전체 문서 트리가 끝나면 document.write이 전체 페이지를 덮어 씁니다. 페이지를 렌더링하는 동안 실제로 인라인 스크립트에서만 사용할 수 있습니다.

그런데도 권장하지 않습니다. jQuery를 사용하거나 실망스런 경험을하려면 document.createElement(..)appendChild(document.createTextNode(..))