[英]Saving data with jQuery/Ajax
每当有人开始在文本框中输入内容时,我都希望收到警报。 它将返回test.php文件夹中的“数据已保存:” +我的消息。
$("#textbox").on('change keyup paste', function() {
$.ajax({
method: "POST",
url: "test.php",
data: { content: $("#textbox").val() }
})
.done(function( msg ) {
alert( "Data Saved: " + msg );
});
});
我尝试将“方法”更改为“类型”。 使用.serialize()。 使用成功:功能
我不确定是什么问题。 谢谢!
编辑:添加了错误代码。 到目前为止,在控制台上没有错误消息。
$.ajax({
method: "POST",
url: "test.php",
data: { content: $("#textbox").val() }
})
error: function (request, error) {
alert("An error occurred");
},
success: function (response) {
if (response == 'OK') {
$("#diary").val()
} else {
alert("An error occurred");
}
从您的评论中,您得到以下错误:
$ .ajax不是HTMLTextAreaElement的函数。 (loggedinpage.php:92)在HTMLTextAreaElement.dispatch(jquery-3.1.1.slim.min.js:3)在HTMLTextAreaElement.q.handle(jquery-3.1.1.slim.min.js:3)
该错误告诉您代码无法在任何地方找到$ .ajax()函数来执行它。
同时,该消息表明您正在使用jQuery Slim。 该库的简化版本不包括$ .ajax()函数。 您需要使用完整版的jQuery。
最新(或任何最新)发行说明中的详细信息(在“ Slim build”部分中): https : //blog.jquery.com/2017/03/20/jquery-3-2-1-now-available/
附带说明,我很惊讶您想在用户每次在文本框中输入字符时都显示警报。 我预计这将很快使用户感到烦恼。 也许只是在附近的div内显示一条消息(这样不会窃取焦点并阻止他们键入内容)会更好。 我还要问,是否真的有必要在每次输入字符时将数据保存到服务器? 如果用户键入很多,它将触发许多ajax请求。 您包含“关键字”是这样做的原因。 也许需要重新考虑一下您希望它如何工作以及原因。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.