我正在为我的网站做一个评论功能,需要让它的人提交评论(它包含错误)后,它将显示错误,而不是刷新页面。我对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>请帮帮忙。
发布于 2013-08-27 07:53:48
我认为在客户端通过Javascript进行验证会更容易一些。编写一个函数并将其绑定到按钮的onclick()事件,而不是简单地使用submit类型的按钮。
如下所示:
function submit() {
if (document.getElementById("myTextarea").value=='') {
alert("Your comment is too short.");
}
else {
document.getElementById("myForm").submit();
}
}发布于 2013-08-27 07:59:54
使用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>发布于 2013-08-27 08:17:45
对于基本的验证,比如空字段或输入框的长度,您可以使用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.
}
);希望这能有所帮助:)
https://stackoverflow.com/questions/18454803
复制相似问题