元素在追加时重复

时间:2013-11-07 21:50:16

标签: javascript jquery

首先,我正在尝试在jQuery,Ajax和PHP中创建一个基本的tcg 下面的小提示是我尝试将卡附加到空位并更改数据属性值,但是当我点击一张卡时,它会创建其他“卡”并且值不会改变。
http://jsfiddle.net/bNB89/1/
我尝试用于数据更改的代码:

$(this).data('place', 'field');

我该如何解决这个问题?

2 个答案:

答案 0 :(得分:1)

您的代码中的问题是您在类中使用append,因此正在包含该类的每个元素中创建内容。您应该使用类获取第一个元素,附加到它然后删除该类,以便不再选择它。我设置了一个演示它的小提琴http://jsfiddle.net/bNB89/2/

答案 1 :(得分:0)

您可以获得其他卡片,因为有多个.myslot元素,每个元素都会获得一份副本 使用一个选择器,它将为您提供一个要追加的项目。例如.myslot:empty:first
.data()不会更改数据属性,它使用自己的内部机制来存储数据。如果您确实要更改属性,可以使用attr

http://jsfiddle.net/bNB89/3/