重新加载后,jQuery定位器在错误的页面中查找 - c#

我有以下页面:
default.aspx
小部件/rss.aspx

在使用以下代码加载default.aspx时,将rss.aspx动态加载到div中:

$.get('/Widgets/rss.aspx', { TabControlID : 385}, function(data) {
    $('#drbox385').html(data);
});

这没有问题。

rss.aspx中的代码:

<input type="submit" value="Save" />

<div id="RSSfeed<%=TabControlID %>">

<script type="text/javascript">
  var gurl = "http://ajax.googleapis.com/ajax/services/feed/load?v=1.0&callback=?&q=<%=MyUrl%>&num=<%=MyCount %>";
  $.getJSON(gurl, function (data) {
  var feeds = data.responseData.feed;
  if (!feeds) {
      $("#RSSfeed<%=TabControlID %>").append('There was an error loading this feed.');
      }
      else
      {
          for (var i = 0; i < feeds.entries.length; i++) {
              var entry = feeds.entries[i];
              var title = entry.title;
              var link = entry.link;
              var description = entry.contentSnippet;
              var html = "<div class='stippel'><img height='10' width='10' src='/images/rss10.png' style='margin-right:2px;'><a target='_blank' href='" + link + "' class='feed_item_link' title='" + description + "'>" + title + "</a></div>";
              // this line doesn't work after reload
              $("#RSSfeed<%=TabControlID %>").append($(html));
              // end of bug
          }
      }
  })
</script>    

当您单击“保存”按钮时,配置数据将发布到default.aspx上的不可见iframe中
iframe生成以下代码,以使用新配置重新加载小部件:

$(document).ready(function(){
var str;
str = "<div style='text-align:center'><img src='/images/loading.gif' width='32' heigth='32'/></div>";
$(parent.document).find('#drbox385').html(str);
$.get('/Widgets/rss.aspx', { TabControlID : 385}, function(data) {
$(parent.document).find('#drbox385').html(data);
});
}); 

数据被加载回页面,但是rss.aspx中的这一行代码不起作用:

$("#RSSfeed<%=TabControlID %>").append($(html));

jQuery在rss.aspx而不是default.aspx中寻找ID#RSSfeed385

更改此行为的正确语法是什么?

参考方案

这样添加。

$("#RSSfeed<%=TabControlID %>", window.top.document).append(html);

我还添加了window.top.document告诉他们在顶级文档上搜索,而不是在rss.aspx内部搜索

http://api.jquery.com/append/

通过在前面添加$,您实际上可以搜索要添加的元素,只需删除它以添加html变量中存在的代码。

故障排除“警告:session_start():无法发送会话高速缓存限制器-标头已发送” - php

我收到警告:session_start()[function.session-start]:无法发送会话缓存限制器-标头已发送(错误输出开始如果我将表单数据提交到其他文件进行处理,则可以正常工作。但是,如果我将表单数据提交到同一页面,则会出现此错误。请建议<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0…

jQuery Ajax文件上传在客户端浏览器上无法正常工作 - javascript

我正在尝试使用Ajax和JQuery实现个人资料图片上传功能我能够将个人资料图片成功上传到我尝试过的所有机器和移动设备上的数据库中。它适用于我在Chrome,Edge,Firefox,Safari甚至Vivaldi上使用。问题是我住在加拿大的客户无法将他们的个人资料图片上传到数据库。另外,纵向宽高比的图像倾向于向侧面旋转。我一直在要求他重​​新注册并多次提供…

使用php重新加载内容 - javascript

在对网站进行编程时,我以前使用过此代码,它可以完美工作,但是现在当我想使用一些Flash部件时,每次单击链接时,它都会重新加载所有网站。源代码: <!DOCTYPE html> <html> <head> <title>Hot King Staff</title> <meta charset=…

AJAX调用只能与$(document).on('click')一起使用 - php

我有一个显示数据库条目的表。用户能够为每一行打开一个弹出菜单。选项之一是删除数据库条目,并且该表应通过AJAX调用相应地刷新。只要有人单击#delete-toggle中的table-popup,我就会在HTML页面上进行AJAX调用(table-popup是div,当有人单击每行中存在的表中的table-edit-button时出现的表): <div …

用jQuery填充模式形式 - javascript

我正在将订单表从数据库绘制到datatables(jquery插件)中。我要在每笔最后一笔交易或每笔交易中增加付款。问题是,如何获取单击添加付款按钮以添加付款的行的订单ID。其次,当点击addpayment时,它会弹出一个带有字段或订单号的模态表单。我想用在td中找到的订单ID填充该字段,并使其不可编辑或隐藏,但在提交模态表单时将其发布到服务器。表格和模式表…