自动保存更改事件

时间:2013-11-24 23:24:55

标签: ajax jquery

我编写了一个脚本,可以自动将textarea值保存在textarea的onchange事件中。我面临的问题是当用户输入内容并突然停止时,onchange不会触发,直到用户点击屏幕上的其他位置。是不是可以让我的脚本以用户在textarea上停止输入时的方式工作:

<textarea onchange="onautosave()" id="autosave" ></textarea>让我们说五秒钟,然后函数onautosave()被触发?请让我现在怎么办呢。感谢

1 个答案:

答案 0 :(得分:2)

您可以使用onkeyup事件和setTimeout()来触发自动保存。这是代码(仅用于描绘整个事物)

HTML

<textarea onkeyup="autosave()" id="autosave" ></textarea>

JS

var autosave_timer = null;

function save() {
    // actual save code
}

function autosave() {
    if(autosave_timer)
        clearTimeout(autosave_timer);

    autosave_timer = setTimeout(save, 5000);
}

请注意清除超时。它有助于不要压倒服务器。