javascript - HTML:输入按钮在繁忙的网页上卡住

标签 javascript jquery html input

当网站流量很大时,有时网页上的许多表单按钮的功能不起作用。例如,这里是网页“添加到购物车”按钮的代码...

<fieldset id="add-remove-buttons">
   <input class="button" name="commit" type="submit" value="add to cart">
   <a href="/shop" class="button continue">keep shopping</a>
</fieldset>

<script id="cart-controls-add" type="text/x-nano-tmpl">
  <form accept-charset="UTF-8" action="/shop/170325/add" class="add" data-remote="true" id="cart-addf" method="post">
    <div style="margin:0;padding:0;display:inline">
       <input name="utf8" type="hidden" value="&#x2713;" />
       <input name="authenticity_token" type="hidden" value="YzR1rCDbfkdbY9M7Fvlx61/adGM9rO51uo6kFFBtdnk=" /></div>
    <fieldset>
      <input id="size" name="size" type="hidden" value="40401" />
      <a href="/shop/accessories/ysw1o8v0k" class="next">next accessory &gt;</a>
    </fieldset>
    <fieldset id="add-remove-buttons">
       <input class="button" name="commit" type="submit" value="add to cart" />
       <a href="/shop" class="button continue">keep shopping</a>
    </fieldset>
  </form>
</script>

这是否只是服务器端的问题,无法在客户端缓解?我正在考虑使用 while 循环来继续提交输入函数,直到成功,但有时它永远不会成功。或者最好刷新一下网站,再试一次,如果没有,然后刷新并重试,重复?任何意见将不胜感激!

最佳答案

请求可能超时。如果将其更改为 JavaScript AJAX 调用,则可以在客户端设置超时,而不是重新提交(这只会增加负载)。根据您的服务器是什么,您可以查看服务器端的超时设置。我会设置一个类似于旋转器的视觉指示,直到您从 AJAX 调用返回成功或失败为止。

关于javascript - HTML:输入按钮在繁忙的网页上卡住,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41052429/

相关文章:

javascript - 如何将图像用作网站上的光标?

javascript - Asp.net 部分 View - 单击后设置 html 和 css - 不更改其状态

javascript - Flash 在 Android 浏览器解决方法中始终位于最前面?

javascript - html5 Canvas 不填充坐标 (0,0) 处的文本

javascript - 透明图像上的 CSS 过渡

javascript - 为什么我的页面顶部和底部有黑白条?

javascript - 使用 img 标签加载不受信任的 SVG 时的 XSS

javascript - Typescript 数组推送仅显示最新项目

javascript - 在网页上显示来自本地 xml 标记的实时数据

jquery - CSS/jQuery : grey out jQuery cycle colour image slideshows