一直在看一些教程,因为我不太确定它是如何工作的(这就是为什么我在这里的原因:我的脚本不能正常工作)。无论如何,我尝试做的是使用名为insert
的PHP文件将shoutboxform.php
数据导入我的数据库,因为我打算将它用作某种聊天/吼叫,我不知道#39; t希望它在提交表单时重新加载页面。
jQuery的:
$(document).ready(function() {
$(document).on('submit', 'form#shoutboxform', function () {
$.ajax({
type: 'POST',
url: 'shoutboxform.php',
data: form.serialize(),
dataType:'html',
success: function(data) {alert('yes');},
error: function(data) {
alert('no');
}
});
return false;
});
});
PHP:
<?php
require_once("core/global.php");
if(isset($_POST["subsbox"])) {
$sboxmsg = $kunaiDB->real_escape_string($_POST["shtbox_msg"]);
if(!empty($sboxmsg)) {
$addmsg = $kunaiDB->query("INSERT INTO kunai_shoutbox (poster, message, date) VALUES('".$_SESSION['username']."', '".$sboxmsg."'. '".date('Y-m-d H:i:s')."')");
}
}
和HTML:
<form method="post" id="shoutboxform" action="">
<input type="text" class="as-input" style="width: 100%;margin-bottom:-10px;" id="shbox_field" name="shtbox_msg" placeholder="Insert a message here..." maxlength="155">
<input type="submit" name="subsbox" id="shbox_button" value="Post">
</form>
当我提交任何内容时,它只是重新加载页面而没有任何内容添加到数据库中。
答案 0 :(得分:2)
阻止默认提交行为
$(document).on('submit', 'form#shoutboxform', function(e) {
e.preventDefault();
$.ajax({
type: 'POST',
url: 'shoutboxform.php',
data: $(this).serialize(),
dataType: 'html',
success: function(data) {
alert('yes');
},
error: function(data) {
alert('no');
}
});
return false;
});
答案 1 :(得分:2)
使用以下结构:
$('form#shoutboxform').on('submit', function(e) {
e.preventDefault();
// your ajax
}
或https://api.jquery.com/submit/:
$("form#shoutboxform").submit(function(e) {
e.preventDefault();
// your ajax
});