У меня есть следующие JavaScript на моей странице:Telerik RadTextBox ValueChanged событие и window.onbeforeunload
var isDirty = false;
function OnTextBoxValueChanged(sender, args)
{
isDirty = true;
}
window.onbeforeunload = function()
{
if (isDirty)
{
return 'You have unsaved changes on the form.';
}
}
OnTextBoxValueChanged является обработчик соответствующего события клиента RadTextBox в.
если пользователь меняет текст в текстовом поле, затем перемещает фокус на любой другой элемент, а затем нажимает «закрыть вкладку» в браузере - появляется окно подтверждения. Это верно. Но проблема возникает, когда пользователь меняет текст и сразу же нажимает кнопку «закрыть вкладку». В этом случае событие onbeforeunload срабатывает перед onvaluechanged и isDirty переменной имеет неправильное значение (false) в onbeforeforeload.
Я делаю что-то неправильно или есть обходное решение для моего дела?