【发布时间】:2019-05-22 06:52:23
【问题描述】:
我正在尝试将文本区域的值异步插入到我的数据库中,但是它一直重定向到 PHP 处理页面,并在那里回显结果。 如何让它在当前 HTML 页面上回显 PHP 脚本的结果?
JS:
$("#sub").click(function() {
$.post( $("#text").attr("action"), $("#text :input").serializeArray(),
function(info) { $("#result").html(info);});
});
$("#text").submit( function(){
return false;
})
PHP:
$sql = "UPDATE text
SET text_content = ? WHERE (id = 40) AND (number = $Number);";
$stmt = mysqli_stmt_init($connection);
if (!mysqli_stmt_prepare($stmt, $sql))
{
header("Location: ../create_text.php?error&prepare1111");
exit();
}
else
{
$stmt->bind_param("s", $content);
mysqli_stmt_execute($stmt);
mysqli_stmt_close($stmt);
$connection->close();
echo "successfully saved";
}
HTML:
<form type="text" method="post" onSubmit="return validateText(); toHTML();" action="processing.php" id="text">
<textarea name="content" rows="45" id="auto-expand" class="text-box" type="text"><?php echo stripslashes($content) ?></textarea>
<input type="hidden" name="id" id="id" value="<?php echo $id ?>">
<input type="hidden" name="number" id="number" value="<?php echo $number ?>">
<input type="hidden" name="updated" value="<?php echo $updated ?>">
<button type="submit" id="sub" name="submit">Save</button>
<button type="button" onClick="validateText(); toHTML();">Check</button>
<span id="result"></span>
</form>
任何帮助都会太棒了! :)
【问题讨论】:
-
$("#sub").click(function(e) { e.preventDefault();? -
似乎不起作用:(
-
删除内联处理程序,并将第一个函数附加到
#text.submit事件,然后添加event.preventDefault()。 -
我删除了文本表单的内联函数,仍然重定向到 PHP 页面
-
删除内联,删除
$("#text").submit( function(){整个东西。如果这仍然不起作用,请在所有这些脚本之前验证 jquery 是否正确加载。
标签: javascript php html sql ajax