我想在表单事件“onsubmit”中加载带有 JS 的图像,而无需取消表单的提交操作。
我要做的是:
var img = new Image();
img.onload = function(){
myfunction();
};
img.src = URL_FOR_PHP_SCRIPT_TO_DO_SOME_LOGIC;
window_sleep(750); //Custom method to hang the CPU for 750ms until the request to call the image is called.
这个逻辑对我来说是必须的,我的意思是我不想使用 settimeout 来推迟表单提交,并且我必须以这种方式调用 URL_FOR_PHP_SCRIPT_TO_DO_SOME_LOGIC,因为此代码位于来自不同域的 JS 文件上。这个逻辑在所有浏览器上都可以正常工作,并且发送调用图像的请求——这正是我需要的——但是在 safari 上它不会调用图像请求,而是直接开始发布表单。当浏览器是 safari 时,我尝试在包含表单的页面上添加一个“onunload”事件,但这也没有帮助,并且表单仍然直接提交数据而不开始发送加载图像的请求。