0

我得到了以下表格:

<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");
    });
});

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

将不胜感激一些帮助。谢谢

4

1 回答 1

2

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

提交导出按钮的处理程序this.formonclick的 正在尝试formExport按钮下查找不存在的。

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

<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.

于 2013-01-30T01:03:55.507 回答