Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/425.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使用Java脚本传递数据_Javascript_Client Server - Fatal编程技术网

Javascript 使用Java脚本传递数据

Javascript 使用Java脚本传递数据,javascript,client-server,Javascript,Client Server,如何将数据从客户端传递到服务器 我在一个站点上创建了一个非常简单的文本编辑器,每隔几分钟左右,我会将键入的信息作为文本文件发送回服务器。我正在尝试创造一种类似于googleWave的现场效果 目前,速度和效率并不那么重要。快速而肮脏的方法就足够了。看看。或者在某个时间 发件人: 使用Ajax,web应用程序可以在后台从服务器异步检索数据,而不会干扰现有页面的显示和行为。Ajax技术的使用导致了web页面上交互或动态界面的增加 您将需要使用AJAX来实现这一点。此外,您只需要使用setInterv

如何将数据从客户端传递到服务器

我在一个站点上创建了一个非常简单的文本编辑器,每隔几分钟左右,我会将键入的信息作为文本文件发送回服务器。我正在尝试创造一种类似于googleWave的现场效果

目前,速度和效率并不那么重要。快速而肮脏的方法就足够了。

看看。或者在某个时间

发件人:

使用Ajax,web应用程序可以在后台从服务器异步检索数据,而不会干扰现有页面的显示和行为。Ajax技术的使用导致了web页面上交互或动态界面的增加


您将需要使用AJAX来实现这一点。此外,您只需要使用setInterval启动JavaScript计时器,它将指定保存之间的延迟。当达到间隔延迟时,将进行AJAX调用,该调用将向上传递文本编辑器的当前值

这项技术被称为。简单地说,AJAX使您能够使用javascript发出HTTP请求。异步发出时,请求在后台(在其自己的线程中)处理,完成后,执行您指定的回调函数

虽然了解如何通过本机浏览器API完成工作始终是一个好主意,但诸如popular之类的javascript库可以为您节省大量代码。示例代码:

var editor = $('#editor');

/* Hijack regular form submission and send the data via AJAX
   by listening 'submit' event. */
editor.submit(function() {
    $.post(editor.attr('action'), editor.serialize(), function() {
        // code to be executed after successfull request
    });
    return false;
});

/* Auto-submit the form once per minute by firing 'submit' event. */
setInterval(function() {
    editor.submit();
}, 1000 * 60);
HTML:


拯救

您还可以研究在计时器上将数据写入本地存储(如果浏览器支持)

与往常一样,W3Schools教程令人讨厌。我见过更糟糕的情况,但任何坚持使用全局变量存储XHR对象的教程都不是一个好的起点。(而且这些广告看起来就像是教程的一部分,真是太可怕了)
<form id="editor" action="/path/to/your/save/handler" method="post">
    <fieldset>
        <textarea name="content" cols="70" rows="30"></textarea>
        <button type="submit">Save</button>
    </fieldset>
</form>