0

我仍在尝试Find-an-element-using-jquery-with-a-kind-of-regex-comparison-in-the-data-title,其中我有divs 类.textbox和动态生成的数据标题。所以我想找到具有特定数据标题的框,这是建议的代码,没有错误:

var $theboxes = $(".textbox[data-title^='"+dt+"']");

然而,它似乎并没有真正找到任何.textbox,即使它们确实存在。因为每当我尝试时$theboxes.length,它总是0

顺便说一下,这是一个数据标题的例子:en_Person_Title/ لقب. 所以斜线前是英语,斜线后是阿拉伯语。而且我有多个具有相同数据标题属性的文本框,但代码没有找到它们中的任何一个。知道有什么问题吗?

4

2 回答 2

2

“我试过 *= 但没有差异。”

^=搜索 Starts With.... 它区分大小写

http://jsfiddle.net/BnQnV/1/

于 2012-12-18T18:20:28.310 回答
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
于 2012-12-18T18:15:34.730 回答