基于实验,似乎当我使用未定义的值设置元素的文本时,元素的文本不会从先前的值更改。我想证实这是真的。
例如,我写了以下函数:
$deleteButton.click(function(e) {
$('h1').text($(this).parent().data("component").name);
$(this).parent().data("component", null)
$('h2').text($(this).parent().data("component").name);
}
此代码将元素的数据“component”设置为null,然后尝试访问通常包含在数据“component”中的值。由于元素的数据“组件”已被设置为null,我希望'h2'(首先显示“Test h2”)的文本更改为“”。但是,在执行了$ deleteButton.click()之后,它仍然显示“Test h2”。这是否意味着如果文本的值为null,它将只保留原始文本包含在元素中?
感谢。
答案 0 :(得分:0)
如果找不到某些东西,无论是元素还是值,jQuery都会默默地结束大多数方法。显然,如果$(this).parent().data("component").name
不存在,它根本无法完成操作。
更新:发布的link elclanrs似乎证实了这一点。