jQuery,在表单发布或执行时执行某些操作

时间:2013-01-30 00:52:14

标签: jquery

我得到以下表格:

<form name="x" method="post" action="/message.jsp" onsubmit="validate(this)">

<input type="button" name="Export" value="Export" onclick="this.form.action='ReportExecute.jsp';this.form.submit();">

</form>

我想要做的是,当导出按钮被隐藏时,我正在尝试做某事(比如显示微调器或禁用按钮)(此按钮在加载指定的特定数据后最终创建要下载的csv文件在表单字段中)直到表单操作(导出数据)或表单发布完成。

我做的是这样的:

$(document).ready(function(){
    $('form[name="x"]').submit(function() {
        alert("test");
    });
});

我希望在单击导出按钮时收到警报,因为表单通过单击此按钮执行某些操作,但它从未起作用!好像表格根本没有发布任何内容!

会感激一些帮助。感谢

1 个答案:

答案 0 :(得分:2)

您正试图在错误的HTML元素上触发提交。

“提交导出”按钮的this.form处理程序中的onclick正在尝试在form按钮下查找不存在的Export

您想要将第二行更改为以下内容:

<input type="button" name="Export" value="Export" onclick="submitForm();">

在页面中添加以下JavaScript函数:

function submitForm() {
    // write whatever you want to do before the form begins to post here
    $('form[name="x"]').attr('action', 'ReportExecute.jsp').submit();
}

在您提供的事件处理程序(当前称为alert的位置)中,在表单帖子的末尾写下您想要执行的任何操作。