php - jQuery/ajax 没有更新页面上的 div

标签 php javascript jquery ajax

我正在尝试使用 id=OCRID 更新一个 div,这是我页面上包含一些数据的一个 div。我首先使用了以下 URL 中的代码,但是我们切换到了 jQuery 方法。 <-Ugly ajax-> .切换到这个。使用警报,我看到成功返回的消息是正确的消息,但 document.getElementById(OCRID).innerHTML=msg 不会更改值。我有一些其他的 javascript 可以做一些类似的事情,但不使用来自服务器的数据。请帮忙?

$.ajax({
   type: "GET",
   url: url,
   data: "q="+OCRID+"&newstatus="+document.getElementById(OCRID).value,
   success: function(msg, OCRID){
     document.getElementById(OCRID).innerHTML=msg;
   }
 });

最佳答案

首先你提到的OCRIDdiv的一个id,你用过

document.getElementById(OCRID).value // a div doesn't have a value attribute

它返回 HTML 元素的值,但 div 不包含任何值属性,并且在您使用的成功回调中

success: function(msg, OCRID){
    document.getElementById(OCRID).innerHTML=msg; // innerHTML is right for a div
}

来自jQuery文档:

success(data, textStatus, jqXHR)

A function to be called if the request succeeds. The function gets passed three arguments: The data returned from the server, formatted according to the dataType parameter; a string describing the status; and the jqXHR (in jQuery 1.4.x, XMLHttpRequest) object. As of jQuery 1.5, the success setting can accept an array of functions. Each function will be called in turn. This is an Ajax Event.

在这种情况下,你不应该使用 OCRID 作为第二个参数,因为 jQuerysuccess 回调中使用了 3 个参数,这些基本上是data, textStatus, jqXHR 在这种情况下 data 是你的 msgOCRID 在这种情况下变成 textStatus 是响应的状态信息,第三个参数是xhr对象。所以应该是

$.ajax({
    type: "GET",
    url: url,
    data: "q="+OCRID+"&newstatus="+$('#'+OCRID).html(), // or text()
    success: function(msg){
        $('#'+OCRID).html(msg); // or text()
    }
});

还要记住,您的 OCRID 看起来像一个变量,它应该在您的 ajax 调用范围内可用,如果这不是一个变量,那么它应该是 $('#OCRID') 在下面给出的两个地方

$('#OCRID').html();

并在成功回调中

$('#OCRID').html(msg);

关于php - jQuery/ajax 没有更新页面上的 div,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14145258/

相关文章:

php - strtotime - 午夜前一秒

javascript - 为什么在 tabs.js 中使用 new 关键字

php - 支付宝付款后返回商户网站

php - 使用Direct-Upload上传到Youtube后无法获取视频ID

javascript - 我可以使用 javascript "transition"<audio> 元素的音量吗?

javascript - 使用 FabricJS 进行图像剪辑到路径

javascript - 点击提交链接后尝试关闭弹出窗口

javascript - 从对象 "this"javascript 获取信息

php - PHP 应该生成什么来返回 jQuery AJAX 请求?

javascript - 如何搜索两个数组并查找是否匹配?