У меня были проблемы с отладкой некоторого JavaScript, который обычно казался бы простым для исправления.Я пробовал несколько методов, некоторые из которых основаны на использовании формы для доступа к полям, другие способы с использованием getElementById.Я также возился с тем, чтобы оставлять / выводить атрибуты имени в нескольких местах.
В файле Iframe asdf_iframe.html:
<form id="asdf_form" name="asdf_form" action="asdf_iframe.html">
<input type="hidden" id="field_1">
</form>
В базовом файле:
<iframe id="asdf_iframe" name="asdf_iframe" src="asdf_iframe.html" height="50" width="50">
</iframe>
<script>
function get_iframe_doc(_window,frame_id) {
var frame_elem = _window.document.getElementById(frame_id);
if(frame_elem.contentDocument)
return frame_elem.contentDocument;
else
return frame_elem.contentWindow.document;
}
</script>
<script>
var asdf_iframe_doc = get_iframe_doc(this,"asdf_iframe"); //Profiler says this is defined
asdf_iframe_doc.getElementById("field_1").value = 1234; // Error Here: not defined
</script>
Я пробовал много разных способов доступа к field_1, но безуспешно.