-1

私は次のjQueryコードを持っています:

<script type="text/javascript">
    $(document).ready(function() {
        var color = ['none', 'green', 'yellow', 'red'];
        $('table').on('change','select', function() {
            $(this).parents('td').css('background', color[$(':selected', this).index()]);
        });​
    });
</script>

これは、選択ボックスのオプションが選択されたときに、行のすべてのテーブルセルを強調表示します。jQuerycookieプラグインをダウンロードして実装しました。私の質問は、ページが更新されたとき、またはユーザーがログアウトしたときにテーブルセルの行が強調表示されたままになるように、機能(追加コード)を実装するにはどうすればよいですか。

4

2 に答える 2

1

必要なのは、選択した色をCookieに保存してから、読み戻すことだけです。jquerycookieプラグインを使用できます。ここでの使用例:

$(document).ready(function() {

    if ($.cookie("yourname")) {
        // applying color from cookie
        var color = $.cookie("yourname");
        $('div').css('background', color);
        $('select').val(color);
    }

    $('div').on('change', 'select', function() {
        // applying selected color, storing it in the cookie
        var color = $(this).val();
        $.cookie("yourname", color);
        $('div').css('background', color);
    });

});​

デモ

PS:デモでは、HTMLマークアップを提供していないため、少し変更したスクリプトを使用します。

于 2012-09-05T08:36:35.160 に答える
0

答えてくれてありがとう。次のコードでそれを実装するための最良の方法は何でしょうか。

<?php
while ($row = mysql_fetch_assoc($result))

{
echo '<tr>';

echo '<td><input type="text" name="order_no[]" value="' . $row['Orderno'] . '"/></td>';
echo '<td><input type="text" name="order_date[]" value="' . $row['Orderdate'] . '"/>   </td>';
    echo '<td><input type="text" name="order_ordered_by[]" value="' . $row['Orderedby'] . '"/></td>';
    echo '<td><input type="text" name="order_supplier[]" value="' . $row['Supplier'] . '"/></td>';
    echo '<td><input type="text" name="order_total_price[]" value="' . $row['totalprice'] . '"/></td>';
    echo '<td><input type="text" name="order_requested_by[]" value="' . $row['requestedby'] . '"/></td>';
    echo '<td>';
    echo '<select name="order_status[]">';
    echo '<option></option>';
    echo '<option>Approved</option>';
    echo '<option>Pending</option>';
    echo '<option>Dissaproved</option>';
    echo '</select>';
    echo '</td>';
    echo '</tr>';

}
?>
于 2012-09-05T11:30:08.630 に答える