如果文本框包含文本,则不允许用户离开页面

时间:2013-11-22 16:13:53

标签: javascript

我正在使用这个JS代码:

window.onbeforeunload = function() {
    return "Any changes you have made WILL be lost!";
}

如果用户试图离开页面

,则显示警告窗口

我只希望在文本区域中有文本时显示警报

我试过了:

window.onbeforeunload = function() {
    var update_text = document.getElementById('ticket_update').value; 
    if(!update_text == '') {
        return "Any changes you have made WILL be lost!";
    }
}

但如果文本区域为空,则它根本不显示警告

1 个答案:

答案 0 :(得分:0)

问题是

if(!update_text == '')

按照操作顺序,您的代码看起来像

if( (!update_text) == '')

因此,如果有值,则为空!("")为真,因此您的支票为true == ''

需要

if(update_text !== '')

JSFiddle

if(update_text.length)

JSFiddle