Добавление указанного имени пользователя и удаление неопределенного из поля предупреждения - PullRequest
0 голосов
/ 08 июля 2020

Я попытался прикрепить свое имя пользователя, которое я включил на своей странице html, к снова добро пожаловать! но окно подсказки продолжает возвращать снова добро пожаловать! Undefined onsubmit вместо этого из добро пожаловать снова! Akan например

My setCook ie и getCook ie функции работают нормально

Это коды html и Js, которые относятся к этой проблеме, соответственно

<form action="Home.html" method="form" onsubmit="return checkCookie()">
  Name: <input type="text" name="username" size="40"\>
  <input type="submit" value="submit" \>
<\form>
function setCookie(cname,cvalue,exdate) {
    let exd=new Date();
        exd.setTime(exd.getTime()+ (exdate*24*60*60*1000));
    let expires= 'expires=' + exd.toUTCString();

    document.cookie=cname + '=' +cvalue +';' +expires +';path=/';  
}

function getCookie(cname) {
    if (document.cookie.length>0) {
        cstart=document.cookie.indexOf(cname + '=');
        if (cstart !=-1) {
            cstart= cstart+ cname.length+1
            cend= document.cookie.indexOf(cstart ,';');
        if (cend==-1) {
            cend=document.cookie.length;
        return 
            unescape(document.cookie.substring(cstart,cend));
        }
        }
        return "";
    }
}

function checkCookie() {
    let username=getCookie('username').value;

    if (username!='') {
        alert('Welcome again!'+ username);
    } else {
        username=prompt('Please enter your name:' ,'');
        if (username!='') {
            setCookie('username',username,365);
        }
    }
}

Мы будем благодарны за вашу помощь

1 Ответ

1 голос
/ 08 июля 2020

Первый: getCook ie не определено. Второе: форма в этом примере не нужна.

function checkCookie() {
  let username = document.querySelector('input[type="text"]').value;

  if (username != '') {
    alert ('welcome again!' + username);
    document.querySelector('#my-form').submit();
  } else {
    username = prompt('Input your name:', '');
    if (username != '') {
      setCookie('username', username, 365);
    }
  }
}
<form id="my-form">
  Name: <input type="text" name="username" size="40"/>
  <input type="button" onclick="checkCookie()" value="submit" />
</form>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...