我需要能够将ajax代码的responseText添加到变量中,以便可以将其添加到文本段落中,但是我基本上没有任何JS经验,因为在此期间我可以用谷歌搜索我的内容这个项目,因此任何帮助都将得到极大的应用。
我的代码如下所示:
$.ajax({
type: "POST",
url: "/ml/",
contentType: "application/base64",
data: window.dataURL,
dataType: "base64",
success: function(response) {
console.log(response);
},
error: function(err) {
console.log(err);
}
});
然后,我需要能够像这样放置变量:
var para = document.getElementById("canvasimgtext");
para.textContent = responseText
它们是以下功能的完整扩展:
function save() {
window.dataURL = canvas.toDataURL();
document.getElementById("canvasimg").style.border = "2px solid";
document.getElementById("canvasimg").src = dataURL;
document.getElementById("canvasimg").style.display = "inline";
document.getElementById("canvasimg").width = 32;
document.getElementById("canvasimg").height = 32;
$.ajax({
type: "POST",
url: "/ml/",
contentType: "application/base64",
data: window.dataURL,
dataType: "base64",
success: function(response) {
console.log(response);
},
error: function(err) {
console.log(err);
}
});
var para = document.getElementById("canvasimgtext");
para.textContent = responseText
}
提前致谢!
编辑
尝试给出的答案,但没有运气:
$.ajax({
type: "POST",
url: "/ml/",
contentType: "application/base64",
data: window.dataURL,
dataType: "base64",
success: function(response) {
var para = document.getElementById("canvasimgtext");
para.textContent = response;
},
error: function(err) {
console.log(err);
}
});
当放置在此处时,即使通过简单的字符串而不是变量来传递文本,也不会在按下按钮时显示该文本。
第二编辑
原来问题出在Flask没有返回成功而是返回错误,所以这就是什么都没发生的原因。
由于$.ajax()
它是异步调用,因此您必须在success
回调内部运行逻辑。
function save() {
window.dataURL = canvas.toDataURL();
document.getElementById('canvasimg').style.border = '2px solid';
document.getElementById('canvasimg').src = dataURL;
document.getElementById('canvasimg').style.display = 'inline';
document.getElementById('canvasimg').width = 32;
document.getElementById('canvasimg').height = 32;
$.ajax({
type: 'POST',
url: '/ml/',
contentType: 'application/base64',
data: window.dataURL,
dataType: 'base64',
success: function (response) {
var para = document.getElementById('canvasimgtext');
para.textContent = response.responseText;
},
error: function (err) {
console.log(err);
},
});
}
(可选)您可以承诺jQuery ajax函数并使用async / await,请参阅如何承诺ajax调用
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句