这是我的代码工作正常,但它必须在每次提交时重新加载。我想在每次点击提交按钮时重新加载comments.php
。
我应该用JavaScript写什么?
Index.php:
<div class="form-group">
<form action="" method="post" id="reply" enctype="multipart/form-data" >
<div class="input-group">
<input type="text" placeholder="say something" class="form-control" name="comment"/>
<br/>
<button class="btn btn-info" type="submit" name="submit">submit</button>
</div>
</form>
</div>
<?php
if(isset($_POST['submit'])){
//php goes here
}
?>
<div>
<?php include("comments.php") ; ?>
// i want to make this reload on every submit
</div>
&#13;
答案 0 :(得分:0)
{{1}}
这是用jquery
答案 1 :(得分:0)
这个问题使用jquery。如果您不知道,请访问http://jquery.org了解更多信息:
在comments.php周围添加一个div:
<div id="comments">
<?php include("comments.php") ; ?>
</div>
现在您可以捕获提交并将其替换为ajax调用+重新加载注释:
<script>
$(document).ready(function(){
$("#reply").on("submit",function(e){
e.preventDefault();
$.ajax();//todo for you. I cannot write this with this rare information
$("#comments").load("comments.php");//the magic part
return false;//prevent the real submit
}):
});
</script>
答案 2 :(得分:0)
您可以使用jQuery load()方法。
jQuery load()方法从服务器加载数据并将返回的HTML放入选定的元素中。此方法提供了一种从Web服务器异步加载数据的简单方法。
load()方法的参数具有以下含义:
你的HTML:
<!DOCTYPE html>
<html lang="en">
<head>
<script src="https://code.jquery.com/jquery-1.11.3.min.js"></script>
<script type="text/javascript">
$(document).ready(function(){
$("button").click(function(){
$("#box").load("comments.php");
});
});
</script>
</head>
<body>
<div id="comments">
</div>
<button type="button">Load Comments</button>
</body>
</html>
<强>的comments.php 强>
<?php
//content here
echo "I'm loaded";
?>