使用Jquery.load()函数获取变量和页面片段
Get variable and page fragment using Jquery .load() function
我目前正在使用Jquery的.load()函数异步插入页面片段。在我加载页面片段的URL中,我还设置了一个Javascript全局变量值(在script标记中)。
var loaded_variable = 'value1'
有没有一种方法可以使用.load()函数插入页面片段并检索loaded_variable
的值,类似于以下代码:
function loadProducts(url) {
$('#mainplace').load(url + ' #submain', function() {
current_variable = loaded_variable;
});
}
我知道当选择器表达式被附加到URL时会使用脚本块,所以如果.load()函数不起作用,我对其他可以实现这一点的Jquery函数持开放态度。
额外信息:我正在加载的URL是用HTML和Python(Web2py)编写的;使用相同的Python变量来呈现页面片段并设置CCD_ 2值。
如果您想从页面中获取片段并在其上执行脚本,则需要不同的方法。这有点古怪,但有效。
$.ajax({url: 'fetch_page.html', dataType: 'text'}).done(function(html) {
var dom = $('<html />').prop('innerHTML', html);
$('body').append(dom.find('body p'));
$('head').append(dom.find('script'));
});
它从我们提取的页面中提取一个p
标记,并将其插入父页面的body
中。它还执行提取页面中的任何脚本。
如果你想知道prop('innerHTML...
位,那是因为如果我使用jQuery的.html()
方法,它会净化输入字符串,所以我们不会得到我们想要的结果。
我最初想到的是一个文档片段,但不能将HTML字符串插入到文档片段中——必须通过DOM方法进行附加。即使在这种情况下,它也不会像我一样简单地使用一个元素来解析dom(dom
),从而真正提供任何节省。
正如我所说,有点粗鲁,但有效。
我想我也有类似的问题。我已经创建了一个页面,里面会有一个时事通讯注册。我想在我网站上的每一篇博客文章的底部加载这个页面。我不希望它出现在页脚中,因为它是我的博客页面特有的,我希望能够编辑它,而不必编辑每一篇博客文章。
我用url/博客时事通讯表单创建了这个页面,其中包括一些来自电子邮件CRM的代码。
然后我添加了一个div;博客时事通讯形式";类,并将以下内容放在页眉中,以加载我博客文章中第一页部分的内容。
$( document ).ready(function() {
$('.blog-newsletter-form').load("/blog-newsletter-signup #page .page-section:nth-of-type(1) .content");
});
除了。。load函数是从时事通讯页面中剥离脚本,这是我的时事通讯表单工作所必需的。
如何加载页面片段,同时保留时事通讯的脚本。我尝试使用上面的示例代码,但无法使其工作。
- 将函数的上下文应用于javascript变量
- 无法导出函数expressjs/requestjs中的变量
- 函数参数中的数据与指定变量之间的任何性能差异
- 将PHP变量传递给jQuery时遇到问题
- 如何通过ajax刷新JSF填充的javascript变量
- 参数变量出现ngTable指令问题
- 通过javascript重定向html传递php变量
- 将jsp文件下拉列表中的选定项分配给一个java变量(比如String selection)
- 全局变量和全局对象的属性之间有什么区别吗
- 如何在Bootstrap Modal中为动态点击生成的变量设置jade属性
- 值对象在某个变量发生更改后发生更改
- Javascript变量赋值|
- AngularJS-在JSON选择器中使用变量名
- Javascript计数器变量未显示正确的值
- 使用Jquery.load()函数获取变量和页面片段
- 如何使用变量组成查询片段
- 将JavaScript变量发送到片段着色器
- 通过.load传递$_GET变量并加载一个特定的页面片段
- 如何将java脚本变量传递到jsp页面中的java代码片段中
- JavaScript片段中的Ruby变量不能与Slim lang一起工作