我仍在尝试Find-an-element-using-jquery-with-a-kind-of-regex-comparison-in-the-data-title,其中我有div
类.textbox
和动态生成的数据标题。所以我想找到具有该特定数据标题的方框,这是建议的代码,它没有带来任何错误:
var $theboxes = $(".textbox[data-title^='"+dt+"']");
然而,它似乎并没有找到任何.textbox
,即使它们确实存在。因为每当我尝试$theboxes.length
时,它始终是0
。
顺便说一下,这是数据标题的示例:en_Person_Title/ لقب
。这是斜线前的英文,阿拉伯文之后。我有多个具有相同数据标题属性的文本框,但代码找不到任何一个。知道什么是错的吗?
答案 0 :(得分:2)
答案 1 :(得分:1)
当您使用jquery选择元素时,它仅选择运行该代码时存在的元素。如果您动态添加更多元素或修改元素以便该选择器可以选择它们,则需要重新选择它们。
var $theboxes = $(".textbox[data-title^='"+dt+"']");
console.log($theboxes.length); // 0
$(".textbox:not([data-title])").first().attr("data-title",dt+"foobar");
console.log($theboxes.length); // 0
$theboxes = $(".textbox[data-title^='"+dt+"']");
console.log($theboxes.length); // 1