[英]how to make a div load on submit without refreshing the page using ajax?
这是我的代码工作正常,但它必须在每次提交时重新加载。 我想在每次单击提交按钮时重新加载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>
function myfunc(){
$.ajax({
url:"comments.php",
data:$("input").val(),
method:'post',
success:function(response){
},
error:function(error,message){
}
});
}
<form action="javascript:myfunc()"......>
这是jquery
这个问题使用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>
您可以使用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";
?>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.