无法读取未定义的属性'prop'

Par*_*237 -1 javascript

我有一个错误,我无法解决.在我看来,这是一个非常简单的错误,但我无法解决它.我做了一个表格.在此表单中,有一个输入(复选框),您必须单击该复选框以接受隐私声明.然而,点击后,然后取消点击.发生错误.

我已经在StackOverflow上搜索,看看是否已经有问题与我的问题有关.但所有提出的问题都是关于React的.他们没有回答我的问题.我自己也调查了这个错误.但我无法修复它.

if (!$) {
  $ = jQuery;
}

function IsEmail(email) {
  var regex = /^([a-zA-Z0-9_.+-])+\@(([a-zA-Z0-9-])+\.)+([a-zA-Z0-9]  {
  2,
  4
}) + $ / ;
return regex.test(email);
}

$(document).ready(function() {
  $('#dnSubmit').css({
    opacity: 0.3
  });
  $("input#dnAkkoord, input#vwAkkoord").on('click', function() {
    if ($(this).prop("checked")) {
      $("input#dnEmail, input#vwEmail").attr("placeholder", "Voer hier je e-mailadres in").prop("disabled", false);
      $("button#dnSubmit, button#vwSubmit").prop("disabled", false).css({
        opacity: 1
      });
    } else {
      $("input#dnEmail, input#vwEmail").attr("Vergeet niet eerst onze privacyverklaring te accoderen ...").prop("disabled", false);
      $("button#dnSubmit, button#vwSubmit").prop("disabled", true).css({
        opacity: 0.3
      });
    }
  });
});
Run Code Online (Sandbox Code Playgroud)

我期待错误消失.这将有助于我在表单上进一步工作.

Dav*_*vid 5

你究竟想要什么回来?:

.attr("Vergeet niet eerst onze privacyverklaring te accoderen ...")
Run Code Online (Sandbox Code Playgroud)

使用单个参数,.attr()返回该属性的值.但是,您的元素似乎不太可能具有该名称的属性.即使它确实如此,该值仍然没有.prop()功能.

看看上面的代码,看起来你想要设置一个placeholder属性的值,然后返回一个jQuery对象:

.attr("placeholder", "Vergeet niet eerst onze privacyverklaring te accoderen ...")
Run Code Online (Sandbox Code Playgroud)