在提交表单时执行JavaScript

Perform JavaScript on submit of form

本文关键字:执行 JavaScript 表单 提交      更新时间:2023-09-26

我使用JavaScript在网页上加载新页面。看起来像这样:

function loadpage(page,div) {
            $.get(page, function(data) {
                $(div).html(data)
            });
        };

因此,当我提交表单时,我想使用该函数加载php页面,您通常会在表单标记中将其设置为"action"属性。那么,我如何让表单POST或get(实际上并不重要)它的所有内容并使用函数呢。

现在,当我写:

<form action="javascript:loadpage('bla.php','#content');" method="post">
...
</form>

它按照我想要的方式加载bla.php,但POST没有传递任何数据。。。

这个问题有解决办法吗?事先非常感谢。

请参阅表格。提交事件

使用您的方法,您可以按如下方式执行:

Javascript:

function loadpage(page, div, form) {
    var GETdata = '';
    if ( form ) GETdata = $(form).serialize();
    $.get(page, GETdata, function(data) {
        $(div).html(data)
    });
};

HTML:

<form action="javascript:loadpage('bla.php','#content', this);" method="post">
...
</form>

一个更好的方法是使用不显眼的Javascript。删除内联javascript:

<form id="theForm" action="" method="post">
...
</form>

并从您的Javascript代码中绑定您的事件处理程序:

$('#theForm').submit(function(e){
    e.preventDefault();
    loadpage('bla.php','#content', this);
});