0

動的に生成されるdivのリストがあります。基本的に、ユーザーはそのうちの1つをクリックします。例:divdatにはdata-square= 0-1があり、次にdiv data-square = 0.8、クラスattrおよびdata-をクリックします。正方形の値がサーバーに送信され、サーバーはそれらを置き換える必要があるかどうかを承認します。交換用。ただし、最初の内部div属性は、クリックされた2番目の属性に置き換えられ、最初のdiv属性は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');
           })
4

1 に答える 1

2

Just do it in 2 lines, remove the old, add the new:

$($classFrom).children().removeClass( classFrom );
$($classFrom).children().addClass('EMPTY');
于 2012-04-23T17:03:14.880 に答える