我正在为我的网站制作评论功能,并且需要将其设置为在此人提交评论(并且包含错误)之后,它将显示错误而不刷新页面。我几乎不了解AJAX / JQuery,所以我需要一些帮助。
这是我到目前为止所拥有的:
<?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>
所以我需要它做的是,如果该人的评论框不符合标准(在这种情况下,是一个空字段),我需要它来显示此错误行而不刷新页面:
<button name="reply_submit" class="btn post-button" type="submit">Post' . (isset($reply_message) ? '<div class="comment-warning">' . $reply_message . '</div>' : '') . '</button>
请帮忙。
答案 0 :(得分:0)
我认为通过Javascript在客户端进行验证更容易。不要只使用submit
类型的按钮,而是编写一个函数并将其绑定到按钮的onclick()
事件。
这样的事情:
function submit() {
if (document.getElementById("myTextarea").value=='') {
alert("Your comment is too short.");
}
else {
document.getElementById("myForm").submit();
}
}
答案 1 :(得分:0)
使用Javascript
HTML:
<button name="reply_submit" class="btn post-button" onclick="validate()">Post comment</button>
使用Javascript:
<script>
function validate(){
reply = document.getElementById('new_reply').value;
if (reply==null || reply=="")
{
alert("Your comment is too short.");
return false;
}
}
</script>
答案 2 :(得分:0)
对于空字段或输入框长度等基本验证,您可以使用jQuery验证插件 - http://jquery.bassistance.de/validate/demo/或自己编写一些内容。
您可以使用jQuery来实现更好的AJAX /错误处理。在这里查看jQuery AJAX的文档 - http://api.jquery.com/jQuery.ajax/
$.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.
}
);
希望这会有所帮助:)