【发布时间】:2015-01-30 09:22:22
【问题描述】:
欢迎 我在登录 jquery 时遇到问题。 我使用 empty() 或 remove() 函数从 div 中删除所有内容。 问题是当页面动态加载到该 div 中时,我无法使用 jquery 访问该 div 内的任何已加载元素。
get 响应中的数据与以下相同
<div id="menu">
<ul>
<li><a href="#">link</a> <a href="#e">[E]</a>
<ul>
<li><a href="#">link</a> <a href="#e">[E]</a></li>
</ul>
</li>
<li><a href="#">link</a> <a href="#e">[E]</a></li>
</ul>
</div>
$('#menu').empty()
$.get('.php?id=get_menu', function(data)
{
$('#menu').append(data);
});
加载后如果我点击 e(编辑)jquery 什么都不做
这是我使用的一个 jquery 脚本
$('.form').submit(function(event) {
var $form = $(this);
var $inputs = $form.find("input, select, button, textarea");
var serializedData = $form.serialize();
request = $.ajax({
url: "check.php?id=update_menu",
type: "post",
data: serializedData
});
request.done(function (response, textStatus, jqXHR){
$('#menu').empty('<div class="preloader-big"></div>');
$.get('admin_index.php?id=get_menu', function(data) {
$('#menu').append(data);
});
});
request.always(function () {
$('.preloader-big').fadeOut();
});
});
php 脚本已输出,可以使用格式化的 html 代码
我的帖子的答案
此代码在单击字母 e 后获取 php 数据
$('.optedit').on('click', function() {
$.get('admin_index.php?id=get_menu_edit&mid='+menu_id[1], function(data) {
$('#link_name').val(res[2]);
$('#link_title').val(res[3]);
$('#mid').val(res[1]);
)};
)};
我只是将他打包到一个我称之为 update_menu(); 的函数中。 并在
之后重复该功能$.get('.php?id=get_menu', function(data) {
$('#menu').append(data);
update_menu();
})
那是更新 jquery 代码以使用刚刚添加的代码。 一切正常。
感谢您的帮助:)
【问题讨论】:
-
在您的开发工具的帮助下检查是否有错误。
-
我读过一些关于它的文章。 jQuery 在empty() 之后在DOM 树中看不到这段代码
-
正如@ronan 所说,如果您想稍后检索此数据,您应该使用 detach。此外,您应该将数据存储在变量中以便可以检索(分离不会调用简单的字符串,值必须存储在变量中)。
标签: javascript jquery html css