1

私はいくつかのページを開発していて、いくつかのdivのコンテンツをクリアする必要があります:

                <table>
                    <tbody>
                    <div class="records_content">
                        <?php
                            $i=0;
                            foreach ($records as $record) {
                                echo "<tr class = 'output' style='border-bottom: 1px dotted silver;'>";
                                echo "<td width='400'>" . strip_tags($record['language_value']) . "</td>";
                                if ($record['approved_translation'])
                                {
                                    echo "<td width='200' height='30'><div class='field' id='".$record['label_value']."/".$record['language_id']."'>".
                                        strip_tags($record['approved_translation']['language_value'])."</div></td><td><button class='btn btn-info' id='{$record['label_value']}/{$record['language_id']}' href='#'>More...</button>"."</td>";
                                }
                                else
                                {
                                    echo "<td  width='200'>"."<div id='".$record['label_value']."/".$record['language_id']."'><span class='no_translate'>Not translated</span></div>" . "</td>";   
                                }                   
                                echo '</tr>';
                                $i++;
                            }
                        ?>
                    </div>
                    </tbody>
                </table> 

JSコードの一部:

           $(".page_button").click(function () {
                $.post("http://"+document.location.host+"/index.php/welcome/update_records_set/"+this.id,
                    function(data)
                    {
                        alert('123');
                        $(".records_content").empty();
                    });
            });

'123'通知が表示されるため、このスクリプトは機能しますが、'。records_content'クラスのdivコンテナーが明確ではありません。教えてください、どうすれば修正できますか?ありがとうございました。

更新: 今それは動作します。しかし、ページ付けに関して新しい問題があります。

                <br><b>Page:</b><br/>
                <?php
                    for($i=0; $i<$count; $i++)
                    {
                        if ($i==0)
                        {
                            echo "<div class='selected_page_button'>".($i+1)." "."</div>";
                        }
                        else
                        {
                            echo "<div class='page_button'>".($i+1)." "."</div>";
                        }
                    }
                ?>

そして、ボタンのクラスを変更するためのコード:

                $(".page_button").click(function () {

                    $(".selected_page_button").attr("class", "page_button");
                    $(this).attr("class", "selected_page_button");
                });

最初になくてもすべてのボタンで正しく機能します。私のページが作成されると、最初のページが選択されます。「2」をクリックすると、「1」がシンプルで「2」が選択されます。同じことが「1」のないすべてのボタンにも当てはまります。「2」(または他のボタン)をクリックすると、最初にクリックできなくなります。「1」は表示を変更しますが、単純なボタンはクリック可能であり、選択されたボタンはクリック可能ではないため、動作は変更されません。

4

3 に答える 3

4

アラートの.empty()にクリアされることを除いて、コードがすでに述べているように使用をクリアします。ここを参照してください:http://jsfiddle.net/YPLeB/

「OK」をクリックするDIVと、期待通りにクリアされます。

于 2012-07-10T12:10:07.127 に答える
2

これを試して:

$(".records_content").html('');
于 2012-07-10T12:00:47.247 に答える
0

HTMLが空になるにアラートが発生しているのがわかります。関数の後にアラートを配置するか、コードのデバッグ.empty()などの非ブロッキングコマンドを使用してみてください。console.log()

あなたのコード自体は正しいです...コマンドの順序だけがあなたをつまずかせています...

于 2012-07-10T12:01:46.107 に答える