【问题标题】:php & jquery: progressive enhancementphp & jquery:渐进式增强
【发布时间】:2009-12-11 21:17:19
【问题描述】:

我有几个 php 页面,其中包含用于提交数据的表单。我的典型设置是将页面发布到自身,以便我可以验证输入,并在必要时使用用户提交的数据重新加载页面(以及标记以显示错误所在)。如果一切正常,我会重定向到感谢页面。

我想开始使用 ajax (jquery) 来提交表单,但是让原始的 php 提交以备不时之需,以防客户端不使用 javascript。我对 jquery 还是很陌生,并且找到了几个使用 jquery 提交的示例,但没有使用我上面描述的设置。如果可能的话,有人可以举一个简短的例子或指向一个页面。谢谢

【问题讨论】:

    标签: php jquery progressive-enhancement


    【解决方案1】:

    你可以在这里使用 jquery 表单插件http://jquery.malsup.com/form/

    这将是转换现有页面的一种简单方法。

    【讨论】:

      【解决方案2】:

      您可以使用 jQuery 的 POST 方法提交 POST 数据:

      $.post("verify.php", {"name":"jonathan"}, function(results) {
        if (results.response == "ok") {
          alert(results.message);
          $("#form").remove();
        } else {
          alert(results.message);
        }
      }, "json");
      

      示例脚本可能如下:

      if ($_POST["name"] == "jonathan")
      {
        print json_encode(array(
          "response" => "ok",
          "message"  => "You have been verified.";
        ));
      }
      else
      {
        print json_encode(array(
          "response" => "fail",
          "message"  => "Your name is incorrect.";
        ));
      }
      

      【讨论】:

      • ...并且可以使用window.location.href = blah.htmlsuccess回调中执行重定向
      【解决方案3】:

      window.location.href =Thankyou_page_url 如果响应正常,则在 $.post 回调中。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2010-11-26
        • 1970-01-01
        • 1970-01-01
        • 2011-06-13
        • 2011-04-04
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多