复选框“ onchange”后,PreventDefault无法正常工作

时间:2019-02-21 11:59:57

标签: javascript jquery onchange preventdefault

我正在使用我的模态的签名板jQuery插件。我必须批准带有我签名的处方。我还有一个用于默认签名的复选框。如果我在目录中有用于签名的任何图像,它将以模态显示该图像,默认复选框为“已选中”。 有两种可能性或者我将拥有默认签名: 1.使用默认签名 2.取消选中该复选框并添加新签名。 如果签名板为空,则表单将不会提交,并会提示错误消息。

我在使用onchange功能时遇到问题,当我将复选框状态更改为“取消选中”时,显示签名板div,如果我将其保持空白并按保存按钮,则会提示我一条错误消息。但是,当我再次“选中”和“取消选中”复选框时,“ PreventDefault”功能不起作用,并且使用任何空签名板提交了表单。

我的JavaScript代码:

UAAVQTA=

我也把return设为false,但是仍然提交了表格。 我对此深感困惑,如果有人可以帮助/指导我,我将不胜感激。 谢谢,

1 个答案:

答案 0 :(得分:0)

尝试在未选中复选框的情况下禁用按钮,并在用户开始在键盘上书写时启用按钮。

$('.already_signed').change(function(event) {
if (!$("#checkbox").is(":checked")) {
$('input[type=submit]').attr('disabled', 'disabled');
}
});
var canvas = document.querySelector("canvas");

var signaturePad = new SignaturePad(canvas);
signaturePad.onBegin({$('input[type=submit]').removeAttr('disabled');});