0

我有一个列表,其中包含用户可以选择的元素。如果单击一个元素,您将获得该元素的详细视图。如果用户愿意,他可以通过单击按钮“收藏”该元素。

现在我有一个问题,我检查详细视图的“pageinit”,如果这个元素之前被收藏(该信息存储在“localStorage”中)如果它之前被收藏,我希望按钮样​​式被更改。

我的问题是,当我更改样式时,它会更改所有“最喜欢的”按钮的样式,因为它们都具有相同的类。

所以我想我可以通过为每个详细视图中的每个收藏按钮应用自定义类来解决这个问题。这就是我想要这样做的方式:

var className = selectedInstitut+''
$(".makeFavorit").addClass(className)
$(".makeFavorit ").find("." + className).text(selectedInstitut)

第一行在那里,因为“selectedInstitut”是一个数字。

但是上面的这段代码对我不起作用。如果它有效,它应该将按钮的文本更改为“selectedInstitut”,但它没有。如果我手动命名该类的名称,那么它可以工作。有任何想法吗?

(jQuery 移动)

4

2 回答 2

1

替换这个:

$(".makeFavorit ").find("." + className).text(selectedInstitut)

有了这个:

$(".makeFavorit ." + className).text(selectedInstitut)
于 2013-08-05T15:27:18.467 回答
1

抱歉,我刚刚找到了解决方案:

var className = selectedInstitut+''
$(".makeFavorit").addClass(className)
$(".makeFavorit ").filter("." + className).text(selectedInstitut)

不同的是我现在使用的是“filter()”而不是“find()

于 2013-08-05T15:28:20.140 回答