【问题标题】:how will jquery ajax form submission work if javascript is disabled如果禁用 javascript,jquery ajax 表单提交将如何工作
【发布时间】:2013-02-23 13:35:54
【问题描述】:

我试图在不加载另一个 php 页面的情况下提交表单。我正在使用代码点火器。但是大部分教程在表单标签中都没有动作。

如果在浏览器中禁用了 javascript,这将如何工作。有解决办法吗?

【问题讨论】:

  • 不,没有。没有 javascript = 没有 jquery。
  • 无操作 = 提交到当前 URL。不知道这是否适用于您的情况..
  • 唯一的解决方法是加载另一个 PHP 页面。通过 PHP 页面加载让系统在没有 AJAX 的情况下工作是一种很好的做法,然后添加 AJAX 功能以加快/简化那些启用了 Javascript 的人(例如 99% 的人口)
  • 实际上我认为你不需要担心这个;如果网站被禁用,我只会显示警告通知用户该网站需要 javascript。

标签: php jquery ajax codeigniter form-submit


【解决方案1】:

它不会工作 .. 虽然 Ajax 不会发生任何事情 .. 但表单将提交给它的操作。

虽然这不是一个可以想象的好场景,但如果您希望使用您网站的用户没有启用 javascript .. 那么请阅读有关渐进增强的更多信息..

简而言之,渐进增强意味着(在您的情况下): 建立一个可以在没有 javascript 的情况下运行的网站...但是如果启用了 javascript 则使用它...

在您的表单示例中,我建议您对表单执行操作... 并使用 jquery preventDefault() 禁用表单默认操作并通过 ajax 执行您想要的任何操作..

这样做,如果用户没有启用 javascript,那么表单将提交到请求的 url,并且仍然可以双向工作..

但无论如何,恕我直言......假设您使用启用了javascript.. 除非你过于依赖 javascript

【讨论】:

    【解决方案2】:

    你可以有一个后备。您可以做的是检查客户端的 javascript 是否已启用,如果已启用,则使用 ajax 其他明智的使用 Php。或者您可以简单地向用户显示一条错误消息以启用 javascript。

    【讨论】:

    • 只显示一条错误消息以启用 Javascript 对用户不友好。
    • 此外,显式检查是否启用了 Javascript 似乎是多余的 - 如果 Javascript 运行并设置了所需的 AJAX 触发器,那么它将起作用;否则它应该回退到 PHP 页面加载。
    猜你喜欢
    • 1970-01-01
    • 2014-05-19
    • 1970-01-01
    • 1970-01-01
    • 2011-02-12
    • 2017-01-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多