我已经阅读了所有相关的发布,观看过的视频,并阅读了教程......但我仍然无法弄清楚这一点。我只是想在不刷新的情况下运行mysqli_query插入。
没有输入,没有变量,只是没有刷新的预定义sql插入。
以下是主要文件:
<html>
<head>
<script src="inc/scripts/jquery-1.11.3.min.js"></script>
<script>
$("#click").click( function()
{
$.ajax({
url: "click.php",
type: 'POST',
success: function(result) {
//finished
}
});
});
</script>
</head>
<body>
<input type="button" id="click" value="Click">
</body>
</html>
Click.php(已经独立测试):
<?php
$db = mysqli_connect("localhost","root","","mytable")
or die("Error " . mysqli_error($db));
mysqli_query($db,"INSERT INTO items VALUES
('','test','test','total test','test','test','test','test')");
?>
这让我发疯了...我已经阅读过教程并观看了很多关于ajax的视频......但我无法弄清楚这一点。 谢谢你的任何建议。
答案 0 :(得分:1)
To refresh a part of a page you got to bind the success function to a div in the html so add a div with an Id
<div id="myDiv"></div>
And then
$('#like$id').click(function()
{
$.ajax({
url: 'inc/scripts/liker_ajax.php?like=$id',
type: 'GET',
success:function(result){
$('#like$id').addClass('green');
$('#dislike$id').removeClass('red');
$('#myDiv').html(result);
}
});
});
答案 1 :(得分:0)
在绑定元素之前绑定事件$('#click').click()
(因为$('#click')
尚未加载)。
只需将带有点击装订事件的<script>
标记移动到输入按钮下方的<body>
,它就会按预期运行。
您可能还想包装一个jQuery文档就绪的机箱,如:
$(function() {
});
确保在DOM准备就绪时运行。
答案 2 :(得分:0)
试试这个。
<html>
<head>
<script src="inc/scripts/jquery-1.11.3.min.js"></script>
<script>
function runAjax()
{
$.ajax({
url: "click.php",
type: 'POST',
success: function(result) {
//finished
}
});
</script>
</head>
<body>
<input type="button" id="click" onclick="runAjax()" value="Click">
</body>
</html>
答案 3 :(得分:0)
当元素未进行分析时,您将事件绑定到元素。 你有两个选择。
$(document).ready(function() {
// your code here
});
如果出现任何错误,还可以使用开发人员工具下的控制台选项卡查找根本原因。