javascript - 如何通过 jQuery AJAX 更新值

标签 javascript ajax jquery

我通过 jQuery AJAX 加载页面内容

$(document).ready(function(){
 $('#next').click(function(event){
  $.ajax({
  url: "load.php?start="+$('#lastid').text(), 
   success: function(html){
   $("#results").append(html);
   $("#lastid").empty().load('html #start');
   }
  });
 });
});

在当前文档中,我有 <div id="lastid"></div>并在外部 php 文件 <div id="start"></div>

id="start"的值从数据库更新,并将传输到 id="lastid"。但是,此代码仅适用于第一次单击。默认<div id="lastid">1</div> ,当单击按钮(id="more")时,它将读取 load.php?start=1 并将当前文档更新为 <div id="lastid">11</div> (这是可见的)。但第二次点击不会加载load.php?start=11

看来$('lastid')很好地读取了默认值 <div id="lastid"></div> ,但当它被 $("#lastid").empty().load('html #start') 更新时则不会

如何修改此代码以供后续点击使用?

最佳答案

哇,好困惑!让我们清理一下:)

您需要删除 id,因为 id 必须是唯一的,如果您将另一个具有 id lastId 的 div 加载到您的站点中,jQuery 将不知道要获取哪个 id。如果您有很多 div,每个 div 都包含 id,则可以使用 ('div:last').text(); 读取最后一个 id;

所以你的ajax看起来像这样:

$(document).ready(function(){
 $('#next').click(function(event){
  $.ajax({
   url: "load.php", 
   data: "start="+$('div:last').text()
   success: function(html){
     $("#results").append(html);
   }
  });
 });
});

我也不知道你对成功的最后一行做了什么,因为应该使用 load 来使用 ajax 从服务器加载数据,你使用 $.ajax() 做了什么。另外 load() 至少需要一个 url 作为参数,参见 here .

关于javascript - 如何通过 jQuery AJAX 更新值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8257709/

相关文章:

javascript - 如何将 bool 值从 viewbag 传递到 jQuery 端?

jquery - 自定义 jquery UI 选项卡

jquery - 如何更改标签标签以通过单击链接输入文本?

javascript - 使用纯 JavaScript 的 Zend AJAX

javascript - ajax 成功重新加载 div 内容不起作用

javascript - 如何在动态生成的mat-table中将字符串转换为类型日期

javascript - 转换 AI 和 EPS 文件以在 HTML Canvas 中使用

javascript - 在 socket.io 中向套接字添加变量

javascript - Ajax jQuery.when() 与 each() 循环

c# - 新版本的 jQuery 加载另一个页面而不是替换 div