使用AJAX和jQuery.get()从外部文档中检索特定元素
Retrieve specific element from external document using AJAX and jQuery .get()
使用ajax和jQuery,当用户切换开关时,我试图从外部文档中的特定元素加载内容。目标内容由切换开关元件的name
指定。
所以我从HTML开始。。。
<input id="toggle1" name="externalContent1" class="toggle" type="checkbox">
<input id="toggle2" name="externalContent2" class="toggle" type="checkbox">
<input id="toggle3" name="externalContent3" class="toggle" type="checkbox">
我第一次尝试使用".load()"…
$('.toggle').click(function () {
var section = '#' + $(this).attr('name');
if ($(this).is(':checked')) {
$('#target').load("content.htm " + section);
}
else {
$(section).remove();
}
});
这是有效的,但它替换了#target
元素的内容。我需要追加而不是替换。
因此,我使用.get()
尝试了其他So问题中的一些建议
if ($(this).is(':checked')) {
var content;
$.get('content.htm ' + section, function(data) {
content = data;
$('#target').append(content);
});
}
但是,这些使用.get()
、.post()
和.ajax()
的解决方案(至少以我尝试过的方式)不允许我在content.htm
中指定元素,它只是拉取整个文档。
是否有方法使用.get()
从外部文档中检索特定元素
当我仔细考虑这个问题时,我想我也可以在检索到的页面上搜索section
,并且只附加它。我发现了这个建议,并尝试了一下,但我也没有运气:
if ($(this).is(':checked')) {
$.ajax({
url: 'content.htm',
type: 'GET',
success: function(res) {
$(res.responseText).find(section).each(function(){
$('#target').append($(this).html());
});
}
});
}
只要进行一些黑客攻击,就可以使用.load()
解决方案。首先加载到一个单独的元素中,然后进行追加。
if ($(this).is(':checked')) {
$('<div id="tempForLoad">').load("content.htm " + section, function(){
$('#target').append($('#tempForLoad').html());
$('#tempForLoad').remove();
});
}
相关文章:
- 为什么可以't我将检索到的文档分配给控制台中的变量
- 如何从游标(集合)中检索n个文档的组
- 如何在MongoDB中检索子文档引用
- 如何检索其属性为给定参数的子字符串的所有文档
- 将特定字段从流星集合文档中检索到JS文件中并去除HTML标签
- 我可以通过id从Mongo检索多个文档吗?
- 如何通过按数组字段选择来检索MongoDB文档
- 在 Google 文档中检索 ListItem 索引
- 正在从文档文本(内容)中检索所有url
- 如何在点击复选框时检索现有的jquery数据表(在文档上初始化)
- 可以't使用getElementsByTagName从Javascript中的XML文档中检索节点
- 在javascript中检索XML文档的所有值
- 使用AJAX和jQuery.get()从外部文档中检索特定元素
- 检索XML文档中的HTML元素
- 如何对从CouchDB检索到的文档调用函数
- 如何从使用XMLHttpRequest检索的html文档中获取图像
- 从HTML文档中检索字数
- 用JS检索和操作交互式PDF文档
- 在MongoDB中通过UUID检索文档没有结果
- Mongodb从每个文档检索一个字段到数组