우리 프로젝트에 두 개의 HTML a와 b가 있다고 가정합니다. a.html은 어떻게 b.html의 요소 값을 얻을 수 있나요?
b 페이지에 입력이 있습니다
<input name="hh" type="text">
a 페이지 HTML 코드:
<!-- HTML代码, src="指向地址" --> <!-- 如果不需要b页面展示在a页面, display: none;添加CSS代码隐藏掉 --> <iframe id="b" src="b.html" style="display: none; "></iframe>
a 페이지 JavaScript 코드:
//为什么用 window.onload 下面会详解window.onload = function () { //先取到iframe var b= document.getElementById("b"); //通过iframe取其b.html上的值 var hh= b.contentDocument.getElementsByName("hh")[0].value; //弹出消息, 查看正确与否 alert(hh); }
window.onload: 페이지의 모든 리소스가 로드되고 실행됩니다
$
(document).ready(function(){})(相当于jQuery中的$
(함수 (){} ) ): 페이지의 DOM 노드가 생성되고 실행됩니다
$(document).ready(function(){})를 사용하면 값을 얻을 수 없습니다. 대답은 다음과 같습니다.
iframe 노드가 생성되었지만 페이지 리소스가 로드되지 않았으나 이때 JS 코드가 즉시 실행되어 결과적으로 값을 얻을 수 없으며 모든 페이지 리소스가 로드될 때까지 window.onload가 대기합니다. JS 코드를 실행하기 전에 로드됨
읽어주셔서 감사합니다
위 내용은 JavaScript를 통해 iframe의 요소 값을 얻는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!