html表单提交 - javascript不提交输入按钮

时间:2011-07-15 12:39:41

标签: javascript html html-form

问题在于:我有一个带有三个按钮和一些隐藏输入字段的简单表单。根据按下的按钮(不同的名称=“”值),动作会有所不同 我现在尝试通过执行以下操作向此表单添加一个确认对话框:

<form method="POST" action="/action" onsubmit="return confirmFormSubmit(this);">
    <input type="submit" name="one" value="This">
    <input type="submit" name="two" value="That">
    <input type="submit" name="three" value="Something else">
</form>

<script type="text/javascript">
function confirmFormSubmit(obj)
{
    window.event.preventDefault();
    jConfirm('Are you sure you want to do this?', 'Awaiting confirmation', function(r) {
        if (r == true) {
            obj.form.submit();
        } else {
            return false;
        }
    });
}
</script>

当我单击“确定”时,操作会发生,但输入按钮未提交 做'document.location = obj.form.action;'不是一个选项,因为它不会提交POST参数。

如何让该死的东西提交输入字段而不仅仅是调用动作?

2 个答案:

答案 0 :(得分:0)

我认为这是因为onsumit方法会覆盖表单声明中的操作。 我实际上会更改表单的按钮,并使其成为一个链接到javascript方法的按钮,该方法执行必要的测试并将值提交给正确的操作。

答案 1 :(得分:-1)

<form method="POST" action="/action">
    <a href="javascript: confirmFormSubmit(this)">
        <input type="button" name="three" value="Something else">
    </a>
</form>

这样的事情应该有效