簡體   English   中英

如何在 Javascript onload 中捕獲表單提交?

[英]How do I catch a form submit in Javascript onload?

我有一個第 3 方系統,我可以在其中添加文章(使用(原始)html)。 一個頁面包含一個搜索表單,它自己發布一個帖子。 加載后(發布后),它將使用 javascript 添加 javascript 提交表單 - 例如

function redir() {
   document.myform.submit();
}
.... //some other stuff here
redir();

我不會 go 詳細介紹設計(我知道為什么要這樣設計但不能改變它 - 我知道它的糟糕設計。)。

有什么辦法可以捕捉到這個“onload”提交嗎?

我試過這個:

var sform = document.getElementsByName('myform');
try {
    sform.addEventListener("submit", alert('Gotcha!'));
} catch(e) {
    sform.attachEvent("submit", alert('Gotcha!')); //Internet Explorer
}

還有 jQuery:

$('myform').submit(function() {
    alert('Gotcha!');
    return false;
});

我似乎無法捕捉到這一事件。 我可以覆蓋該方法:

redir = function(){
    //Empty - override
}

...但是在我的腳本加載之前觸發了提交操作,否則它將覆蓋我的覆蓋方法。

我希望這是有道理的。

您的 jQuery 已接近。 您只需要在基於 id 的選擇器之前使用 #,就像在 CSS 中一樣。

$('#myform').submit(function() {
    alert('Gotcha!');
    return false;
});

您是否在正確的位置覆蓋了 function? 以下對我有用並停止提交。

function redir() {
    document.myform.submit();
}

redir = function(){}

redir();

演示

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM