首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >显示错误而不刷新页面

显示错误而不刷新页面
EN

Stack Overflow用户
提问于 2013-08-27 07:45:49
回答 3查看 1.7K关注 0票数 0

我正在为我的网站做一个评论功能,需要让它的人提交评论(它包含错误)后,它将显示错误,而不是刷新页面。我对AJAX/JQuery几乎一无所知,所以我需要一些帮助。

这是我到目前为止所知道的:

代码语言:javascript
复制
<?php
  if(isset($_POST['reply_submit'])) {
    $reply = $_POST['new_reply'];
    $reply_message = "";

    if(empty($reply)) {
      $reply_message = "Your comment is too short.";
    }
  }
?>

<html lang="en">
  <body>
    <form class="no-margin" method="POST" action="">
      <textarea name="new_reply" placeholder="Write a reply..."></textarea>
      <button name="reply_submit" class="btn post-button" type="submit">Post' . (isset($reply_message) ? '<div class="comment-warning">' . $reply_message . '</div>' : '') . '</button>
    </form>
  </body>
</html>

因此,我需要它做的是,如果此人的评论框不符合条件(在本例中为空字段),我需要它在不刷新页面的情况下显示此错误行:

代码语言:javascript
复制
<button name="reply_submit" class="btn post-button" type="submit">Post' . (isset($reply_message) ? '<div class="comment-warning">' . $reply_message . '</div>' : '') . '</button>

请帮帮忙。

EN

回答 3

Stack Overflow用户

发布于 2013-08-27 07:53:48

我认为在客户端通过Javascript进行验证会更容易一些。编写一个函数并将其绑定到按钮的onclick()事件,而不是简单地使用submit类型的按钮。

如下所示:

代码语言:javascript
复制
function submit() {
  if (document.getElementById("myTextarea").value=='') {
    alert("Your comment is too short.");
  }
  else {
    document.getElementById("myForm").submit();
  }
}
票数 0
EN

Stack Overflow用户

发布于 2013-08-27 07:59:54

使用Javascript

HTML:

代码语言:javascript
复制
<button name="reply_submit" class="btn post-button" onclick="validate()">Post comment</button>

Javascript:

代码语言:javascript
复制
<script>
function validate(){
  reply = document.getElementById('new_reply').value;
  if (reply==null || reply=="")
    {
    alert("Your comment is too short.");
    return false;
    }
  }
</script>
票数 0
EN

Stack Overflow用户

发布于 2013-08-27 08:17:45

对于基本的验证,比如空字段或输入框的长度,您可以使用jQuery验证插件-- http://jquery.bassistance.de/validate/demo/或编写您自己的代码。

您可以使用jQuery来实现更好的AJAX/错误处理。在这里查看jQuery AJAX的文档-- http://api.jquery.com/jQuery.ajax/

代码语言:javascript
复制
$.ajax({
  url: "test.html", //URL to send the request
  success: function() {
    //do something. This is fired when your response is successful
  },
  error: function() {
    //highlight the field that has error or do something else here.
  }
);

希望这能有所帮助:)

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18454803

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档