禁用HTML页面上所有表单的提交功能

Uwe*_*eim 10 javascript forms jquery

使用.NET Windows窗体WebBrowser控件显示页面的预览,我使用此SO发布中描述的以下方法来禁用页面上的所有链接:

$(function() {
    $('a').click(function() {
        $(this).attr('href', 'javascript:void(0);');
    });
});
Run Code Online (Sandbox Code Playgroud)

由于我想要显示为预览的HTML页面也包含HTML表单,我正在寻找一种类似的方法来禁用所有表单提交功能.

我试过了:

$(function() {
    $('form').attr('onsubmit', 'return false');
});
Run Code Online (Sandbox Code Playgroud)

但似乎这不起作用(阅读:"仍然加载页面")的形式如下:

<form id="myform" name="myform" onsubmit="return search()" action="">
Run Code Online (Sandbox Code Playgroud)

我在页面上.

所以我的问题是:

在HTML页面上禁用所有表单提交功能的最佳方法是什么,无论是GET还是POST表单?

Pre*_*aul 30

你应该能够做到:

$('form').submit(false);
Run Code Online (Sandbox Code Playgroud)

jQuery文档:

在jQuery 1.4.3中,您现在可以传入false来代替事件处理程序.这将绑定一个等效于:function(){return false; }.稍后可以通过调用:.unbind(eventName,false)删除此函数.

  • @UweKeim*什么*不起作用?我用测试用例和其他信息更新了我的答案,看一看 (2认同)

mgh*_*hgm 7

用这个:

<form id="myform" name="myform" onSubmit="search();return false;" action="">
Run Code Online (Sandbox Code Playgroud)