提交和点击不工作

IT技术 javascript html
2021-03-12 09:51:00
<input type="submit" class="sub" onClick="exefunction2()" id="button">

当我点击提交按钮时onClick不起作用。我怎样才能解决这个问题?我需要在提交表单时进行此操作,因为onClick事件包含值。

6个回答

最好的方法是像这样在表单标签上调用你的方法:

<form onsubmit="return exefunction2();">
...
</form>

退货false不会提交表单,true会提交!

要发布更多数据(使用 exefunction2 构建),您可以使用它

<script type="text/javascript">
    function exefunction2(form) {
        //add dynamic values
        var dynValues = {
            "val1": 1,
            "val2": "bla"
        };

        for(var name in dynValues) {
            //check if field exists
            var input = null;
            if(document.getElementsByName(name).length === 0) {
                input = document.createElement('input');
                input.setAttribute('name', name);
                input.setAttribute('type', 'hidden');
                form.appendChild(input);
            }
            else {
                input = document.getElementsByName(name)[0];
            }

            input.setAttribute('value', dynValues[name]);
        }
        return true;
    }
</script>

<form onsubmit="return exefunction2(this);">
    <input type="submit" />
</form>
我必须以 JavaScript 函数返回的形式和值发布内容,这可能吗?
2021-05-11 09:51:00

W3学校在这里有很好的解释:http : //www.w3schools.com/js/js_validation.asp

基本上,提交在做任何事情之前等待来自 onClick 的返回值。如果您愿意,您也可以连接一个 confirm() 请求。如果表单通过验证,只需编写类似 return confirm("continue"). 这是一个老问题,但我希望它可以帮助任何偶然发现它的人。失败的另一个重要原因是脚本中的错误。不幸的是,除非您在浏览器中运行调试器,否则很难知道是否有任何东西使您的脚本崩溃。打开浏览器调试器有助于跟踪任何问题。在 Chrome 中,您可以使用 CTRL-SHIFT-I(Windows)或 CMD-OPTION-I(Mac)。如果您暂停捕捉到的错误,您可以找到任何过早停止脚本的语法或致命错误。

您可以使用 Javascript 提交表单。

<form id="form_id" ...>
<input type="button" class="sub" onclick="exefunction2();" id="button">

Javascript:

function exefunction2() {
    ...
    document.forms["form_id"].submit();
}

好吧,我不知道这是否是“官方”预期的行为,但这就是它的工作原理:如果向其添加 onclick Javascript 函数,则提交类型按钮将不再提交。只需让函数也提交表单或让函数返回 false

试试<form onSubmit="exefunction2()">