Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/385.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 在Ajax请求后更新控件的最佳方法?_Javascript_Jquery_Ajax - Fatal编程技术网

Javascript 在Ajax请求后更新控件的最佳方法?

Javascript 在Ajax请求后更新控件的最佳方法?,javascript,jquery,ajax,Javascript,Jquery,Ajax,我有一个网页,它触发了一个Ajax请求,该请求将一些数据存储到数据库中,我想更新该网页,以便用户可以看到他们提交的更改 至少有三种方法可以实现这一点: 通过抓取用户输入文本的内容并立即将其插入所属位置,立即使用纯JavaScript更新网页 让ajax调用将存储的文本作为响应返回,获取响应,然后使用JavaScript将该文本插入页面上它所属的位置 让ajax调用返回一个标志(例如,对于成功的db write为true,否则为false),如果该标志为true,则使用JavaScript从输入

我有一个网页,它触发了一个Ajax请求,该请求将一些数据存储到数据库中,我想更新该网页,以便用户可以看到他们提交的更改

至少有三种方法可以实现这一点:

  • 通过抓取用户输入文本的内容并立即将其插入所属位置,立即使用纯JavaScript更新网页
  • 让ajax调用将存储的文本作为响应返回,获取响应,然后使用JavaScript将该文本插入页面上它所属的位置
  • 让ajax调用返回一个标志(例如,对于成功的db write为true,否则为false),如果该标志为true,则使用JavaScript从输入控件获取用户的内容,并将其插入页面上其他位置
  • 还是另一种没有提到的方法
我不是说这是主观的,我只是不知道哪种方法是最好的。我的直觉告诉我使用第三项(返回一个标志,然后更新字段)。这是最好的方式吗


谢谢

我有两种方法:如果一开始页面是由ajax填充的,那么我重新调用该函数以重新获取成功时的数据


否则,如果成功,我会将数据附加到它需要去的地方。这样,您就不会来回传输数据。

我有两种方法:如果一开始页面是由ajax填充的,那么我会重新调用该函数以在成功时重新获取数据


否则,如果成功,我会将数据附加到它需要去的地方。这样,您就不会来回传输数据。

我会选择第二种或第三种方式。两者之间没有显著差异

我的理由

第一,在您知道请求是否成功之前更新该字段。从UI的角度来看,这是响应性的,但如果请求失败,则不正确


第二种或第三种方法提供了请求是否成功(如果没有成功,则允许显示错误),并允许在不单独请求的情况下更新UI。如果请求返回的值较大,从而占用不必要的带宽,那么第三种方法可能会更好一些。

我会选择第二种或第三种方法。两者之间没有显著差异

我的理由

第一,在您知道请求是否成功之前更新该字段。从UI的角度来看,这是响应性的,但如果请求失败,则不正确


第二种或第三种方法提供了请求是否成功(如果没有成功,则允许显示错误),并允许在不单独请求的情况下更新UI。如果请求返回的值较大,从而占用不必要的带宽,那么第三种方法可能会更好一些。

是的,我考虑第三种方法也是出于同样的原因——通过电线发送的数据要少得多,即使不会产生太大的影响。谢谢是的,我也在考虑第三种方法,因为同样的原因——通过电线发送的数据要少得多,即使它不会产生巨大的影响。谢谢