gpt4 book ai didi

php - ajax回调函数为空

转载 作者:行者123 更新时间:2023-11-28 02:06:02 27 4
gpt4 key购买 nike

这是我第一次使用 StackOverflow,如果我忘记了一些重要信息或者我的问题听起来很愚蠢,请原谅我!

我正在构建一个网站,一旦用户写下一个单词并点击“发送”按钮,该网站就会生成一个列表。 Php负责提取所需的数据并将其作为列表返回到网页。

我的问题是我想在 js 函数中传递这些数据。我在 StackOverflow 上阅读了很多与此相关的答案,听起来回调函数正是我所需要的。但是,我的 js 函数不断告诉我我的节点为空;看来ajax返回的数据没有被考虑在内。

以下是我的代码的一些部分:

<script>
var xmlhttp;
function loadXMLDoc(cfunc){
if (window.XMLHttpRequest) {// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
} else {// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
var us = document.getElementById("user").value;
var ur = document.getElementById("wiki").value;
xmlhttp.onreadystatechange = cfunc;
xmlhttp.open("GET","contributions_old.php?user="+us+"&wiki="+ur+"",true);
xmlhttp.send();
}
function myFunction() {
loadXMLDoc(function() {
if (xmlhttp.readyState==4 && xmlhttp.status==200) {
document.getElementById("result").innerHTML=xmlhttp.responseText;
var parser = new DOMParser ();
var responseDoc = parser.parseFromString (xmlhttp.responseText, "text/html");
var text1 = responseDoc.getElementById('old1').value;
var text2 = responseDoc.getElementById('new1').value;

var dmp = new diff_match_patch();
dmp.Diff_Timeout = 0;

// No warmup loop since it risks triggering an 'unresponsive script' dialog
// in client-side JavaScript
var ms_start = (new Date()).getTime();
var d = dmp.diff_main(text1, text2, false);
var ms_end = (new Date()).getTime();

var ds = dmp.diff_prettyHtml(d);
document.getElementById('outputdiv').innerHTML = ds + '<BR>Time: ' + (ms_end - ms_start) / 1000 + 's';
}
});
}
</script>

当用户输入单词后,当然是调用网页底部的 myFunction() 的“发送”按钮。我还验证了我的网页,一旦生成了列表,就有以“new1”和“old1”作为 id 的 div(它们是通过我的 php 代码生成的)。

任何帮助将不胜感激!我觉得我已经尝试了一切!

谢谢! :)

最佳答案

强烈建议为此使用 jQuery 或其他一些库。

var url = "contributions_old.php?user=" + $("#user").val() + "&wiki=" + $("#wiki").val();
$.get(url);

关于php - ajax回调函数为空,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17754219/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com