我正在修改由第三方项目生成的网页。当您的浏览器请求页面(伪代码)时,该项目基本上会执行以下操作:
<?php
include: project's fixed library INCLUDE's
include: my freeform php code
?>
(project's fixed HTML <head>...</head> and <scripts/> sections)
(project's fixed HTML <body> tag and page header + frames)
(my freeform php/HTML code)
(project's fixed HTML footer, frame closures, and </body> tag)
该页面包含由 php 基于 $_GET/$_POST 生成和填充的表单元素和 HTML。我的 HTML 包含“OnChange=ValidateItems();” 对于大多数领域;当用户更改页面上的数据时,如果相关,错误消息将内联显示。
我想要的是也触发“ValidateItems();” 页面加载后,在 HTML 中为用户设置初始用户提供的值时。但是由于上述加载结构,我无法访问通常或展示位置。我想知道还有什么办法让它发生。
我在想的一个选择是添加一个微小的不可见框架/框架集/iframe 或其他支持 onload 并且不依赖于 or 标签的对象,然后从 onload= 调用中“引导”我自己,然后手动添加onload 到正文,或以某种方式挂钩通常的 onload 事件,以便在正确的时间调用ValidateItems()一次,然后在设置或完成后退出片段。我不知道最好的方法是什么 - 我最初如何让任何代码执行,然后我会挂钩或修改什么等等,以便它适当地发生(不太早或太晚);从技术上讲,这已经超出了我的水平。帮助和示例代码将不胜感激。