jquery替换attr

时间:2012-04-23 16:58:30

标签: jquery attr removechild jquery-click-event

我有动态生成的div列表,基本上用户点击其中一个ex:div dat有data-square = 0-1然后点击div data-square = 0.8,类attr并且数据平方值正在发送到服务器,服务器批准它们是否应该被替换。替换。但是第一个内部div attr应该被点击的第二个替换,第一个应该有一个class = empty

发送到服务器之前:

<div class="column" data-square="0-1">
<div class="GREEN"></div>
</div>

<div class="column" data-square="0-5">
    <div class="GREEN"></div>
</div>

<div class="column" data-square="0-8">
    <div class="YELLOW"></div>
</div>

一旦从服务器接收回来就应该是这样的

 <div class="column" data-square="0-1">
    <div class="EMPTY"></div>
</div>
 <div class="column" data-square="0-5">
    <div class="GREEN"></div>
</div>
 <div class="column" data-square="0-8">
    <div class="GREEN"></div>
</div>

但是当我从服务器收到时, 它删除了所有名为GREEN的类,它应该替换用户点击的第一个名为GREEN的类。

我可以替换并将第一个div清空而不将其发送到服务器, 但是当谈到时,在收到整个班级时执行操作会被删除。

$.post("check.php", { from:from,to:to,classFrom:$classFrom,classTo:classTo},
         function(data) {

    $($classFrom).children().removeAttr('class').addClass('EMPTY');
           })

1 个答案:

答案 0 :(得分:2)

只需在2行中删除,删除旧的,添加新的:

$($classFrom).children().removeClass( classFrom );
$($classFrom).children().addClass('EMPTY');