js和AJAX,将JSON从服务器发送到客户端
我正在尝试将JSON从Express.js发送回客户端,但无法使其正常工作 routes/editor.jsjs和AJAX,将JSON从服务器发送到客户端,ajax,node.js,express,Ajax,Node.js,Express,我正在尝试将JSON从Express.js发送回客户端,但无法使其正常工作 routes/editor.js exports.save = function(req, res){ fs.readFile(__dirname + "/../public/index.html", function (err, data) { if (data == oldhash) { res.json({ r: 'no' }) } els
exports.save = function(req, res){
fs.readFile(__dirname + "/../public/index.html", function (err, data) {
if (data == oldhash) {
res.json({ r: 'no' })
}
else {
res.json({ r: 'yes'})
}
});
});
public/javascript/test.js
$( ".save" ).click(function( event ) {
event.preventDefault();
$.ajax( {
url: 'http://localhost:3000/save',
data: r,
type: 'GET',
success: function(r) {
if( r == 'yes' ) {
$('#echoResult').append('<p>yes</p>');
}
else {
$('#echoResult').append('<p>no</p>');
}
}
});
});
$(“.save”)。单击(函数(事件){
event.preventDefault();
$.ajax({
网址:'http://localhost:3000/save',
数据:r,
键入:“GET”,
成功:功能(r){
如果(r==‘是’){
$(“#echoResult”).append(“yes”);
}
否则{
$(“#echoResult”).append(“no”);
}
}
});
});
然后相应地从服务器响应,附加正确的HTML
我错过了什么?我看到的所有AJAX示例都没有太大帮助
任何建议都是非常受欢迎的
编辑
我在client->Uncaught ReferenceError:r未定义时出现此错误客户端错误可以如下解决:
$( ".save" ).click(function( event ) {
event.preventDefault();
$.ajax( {
url: 'http://localhost:3000/save',
type: 'GET',
success: function(data) {
if( data.r == 'yes' ) {
$('#echoResult').append('<p>yes</p>');
}
else {
$('#echoResult').append('<p>no</p>');
}
}
});
});
$(“.save”)。单击(函数(事件){
event.preventDefault();
$.ajax({
网址:'http://localhost:3000/save',
键入:“GET”,
成功:功能(数据){
如果(data.r==“是”){
$(“#echoResult”).append(“yes”);
}
否则{
$(“#echoResult”).append(“no”);
}
}
});
});
data
属性位于成功回调中,参数为r
如果没有关于您如何使用express的更多详细信息,我就不能对服务器代码说太多。Define“can't make it work”。另外,您的
fs.readFile
代码缺少错误处理,因此如果那里发生错误,您不会知道。您是对的,我忘了提到错误。检查更新后的帖子。r
未定义似乎没有意义。试着在客户端代码中设置一个错误处理程序。怎么做?抱歉,我对这些技术还不熟悉。请尝试以下方法: