Значение из окна подсказки при нажатии ESC - PullRequest
0 голосов
/ 03 июня 2011

У меня есть эта простая функция

function Login()
{
var x=prompt("Please enter your name","");
var xmlhttp;
if (window.XMLHttpRequest)
  {// Използваните браузъри
  xmlhttp=new XMLHttpRequest();
  }
else
  {// Кой ли ползва тези версии..
  xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
  }
    xmlhttp.open("GET","login.php?u="+x,true);
    xmlhttp.send();
    }

Проблема в том, что пользователь решает выйти из окна приглашения, нажав ESC. Может ли кто-нибудь объяснить мне, что именно происходит с переменной x в этом случае. Я прихожу к выводу, что ему присваивается значение 'null' и под нулем я имею в виду строку, потому что, когда я проверяю с

If(!is_null($u))

мой скрипт не работает, но если я заменю его на

If($u!='null')

тогда все работает просто отлично, так может кто-нибудь объяснить мне, что на самом деле происходит со значением окна приглашения при выходе из него с помощью нажатия ESC?

Ответы [ 2 ]

1 голос
/ 03 июня 2011

x получит значение null, когда пользователь отменит приглашение, поэтому:

var x=prompt("Please enter your name","");
if (x === null) {
    // User canceled
}

Живой пример

0 голосов
/ 03 июня 2011

Возвращается, как если бы вы нажали «Отмена».

Это null не как строка ..

alert( prompt('') === null );

предупредит true, если вы нажмете Esc или кнопку отмены

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...