以下是我工作的代码
$.ajax({
type: 'GET',
url: '<?php echo site_url(); ?>register',
data: "",
success: function (data) {
$("#ldcontent").html(data);
}
});
我想在上面的代码中调用一个图层,如#ldfgp
$('#ldcontent').load('<?php echo site_url(); ?>register #ldfgp');
我的问题是可以通过#ldfgp
从加载页面调用图层($.ajax()
)到我的母版页。
我不能在jquery中使用load函数,因为它排除了加载页面中嵌入的JavaScript。
您的建议和帮助非常感谢。
答案 0 :(得分:1)
$.ajax({
type: 'GET',
url: '<?php echo site_url(); ?>register',
data: "",
success: function (data) {
var $data=$(data);
var $layer=$()
.add($data.find('#ldfgp'))
.add($data.filter('#ldfgp'));
$('#ldcontent').html($layer);
}
});
答案 1 :(得分:1)
您可以将整个文档加载到某个HTML片段,然后从中获取相关内容
$.ajax({
type: 'GET',
url: '<?php echo site_url(); ?>register',
data: "",
success: function (data) {
var $fragment = $('<div/>').html(data);
$("#ldcontent").html( $fragment.find('#ldfgp').html() );
}
});
答案 2 :(得分:0)
你可以试试这个 -
$.ajax({
type: 'GET',
url: '<?php echo site_url(); ?>register',
data: "",
success: function (data) {
$("#ldcontent").html(data);
$("#ldcontent *").css('display','none');
$("#ldcontent #ldfgp").css('display','block');
$("#ldcontent #ldfgp *").css('display','block');
}
});
答案 3 :(得分:0)
所以,我们假设我们有register.html
这样的文档:
<!DOCTYPE html>
<html>
<head>
</head>
<body>
<div id="ldfgp">
<h1>Hello</h1>
</div>
<div>
<h1>Hello 2</h1>
</div>
<div>
<h1>Hello 3</h1>
</div>
</body>
</html>
使用$ .ajax(),您可以通过这种方式获取ID为#ldfgp
的元素:
$(document).ready(function() {
$.ajax({
type: 'GET',
url: './register.html',
data: "",
success: function (data) {
var external = $.parseHTML(data);
$.each(external, function(i, e) {
if ($(e).attr("id") == "ldfgp") {
$("#ldcontent").html(e);
return false;
}
});
}
});
});
但我个人更喜欢Vadim的解决方案,因为它更清晰,并且不涉及显式的.each()迭代。