-1

以下に示すように、現在の変数を出力するオブジェクトを作成して注文しました。

アラートを...2つのdivが緑色で強調表示されます。私はいくつかのjqueryを組み込む必要があると思います..これが私が持っているものです:

<div class='address_info left'>
            <h3>Billing Info</h3>
            <ul>
                <li><label>Account No: </label><?php echo $order->patient_id;?></li>
                <li><label>Name: </label><?php echo trim($order->billing_address['name']); ?></li>
                <li><label>Address 1: </label><?php echo trim($order->billing_address['addr1']);?></li>
                <li><label>Address 2: </label><?php echo trim($order->billing_address['addr2']);?></li>
                <li><label>City, State, Zip:</label><?php echo trim($order->billing_address['city'] . ' ' . $order->billing_address['state'] . ' ' . $order->billing_address['zip']);?></li>
                <li><label>Email: </label><a href='mailto:<?php echo $order->customer_email;?>'>Send Customer Email</a></li>
                <li><label>Phone: </label><?php echo $order->customer_phone;?></li>
            </ul>
        </div>  
        <div class='address_info right'>
            <h3>Shipping Info</h3>
            <ul>
                <li><label>Name: </label><?php echo $order->shipping_address['name']; ?></li>
                <li><label>Address 1: </label><?php echo $order->shipping_address['addr1'];?></li>
                <li><label>Address 2: </label><?php echo $order->shipping_address['addr2'];?></li>
                <li><label>City, State, Zip:</label><?php echo $order->shipping_address['city'] . ' ' . $order->shipping_address['state'] . ' ' . $order->shipping_address['zip']?></li>
                <li><label></label></li>
                <li><label></label></li>
                <li><label></label></li>
            </ul>
        </div>

私は現在、色のホバーでいくつかのcssを使用しています。

div.address_info.left:hover {
    background: red;
    color: #fff; }

div.address_info.right:hover {
    background: #5C991F;
    color: #fff; }

div.order_info:hover {
    background: #3366FF;
    color: #fff; }

だからここに私の更新があります:

if (count(array_diff($this->billing_address, $this->shipping_address)) > 0)
            return false;
        else
            return true;

私の本当の質問は、データに対してjqueryイベントを実行する方法だと思います。初めは漠然としていてごめんなさい。右足で降りなかったと思います。ただし、jQueryのヘルプが必要です。前もって感謝します。

すべての助けをありがとう..私はそれを理解しました!

if($order->check_addresses())
    $class='same';
else
    $class='different';

    <div class='address_info left <?php echo $class; ?>'>
         <div class='address_info right <?php echo $class; ?>'>

そしてcssより

div.same {background-color: green;}
div.different {background-color: red;}
4

2 に答える 2

2

PHPとjqueryを含めるのは正しかったです。これは、JavaScriptのクライアントまたはPHPのサーバーのいずれかで実行できます。試してみて、問題が発生したときに戻ってきてください。

PHPでは、比較の結果を使用して、divにCSSクラスを設定できます。次に、スタイルシートで、そのクラスに基づいて背景色を設定します。

JavaScriptでは、より複雑になりますが、サーバーにアクセスする必要はありません。

于 2013-01-19T00:16:27.290 に答える
2

非表示の入力を使用すると、これを非常に簡単に行うことができます。これがあなたのコードを使った例です。

 <!DOCTYPE html>
<html lang="en">
  <head>
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.8.0/jquery.min.js" type="text/javascript"></script>
<script type="text/javascript">
$(function()
    { 
    var BillAddy = $("#billing").val();
    var ShipAddy = $("#shipping").val();

    if(BillAddy == ShipAddy)
        {
            $(".address_info ").css("backgroundColor","#00FF00");
            return true;
        }
    return false;
    });
</script>
  </head>
  <body>
<div class='address_info left'>
            <h3>Billing Info</h3>
            <ul>
            <input type="hidden" id="billing" value="<?php echo $order->billing_address; ?>" />
                <li><label>Account No: </label><?php echo $order->patient_id;?></li>
                <li><label>Name: </label><?php echo trim($order->billing_address['name']); ?></li>
                <li><label>Address 1: </label><?php echo trim($order->billing_address['addr1']);?></li>
                <li><label>Address 2: </label><?php echo trim($order->billing_address['addr2']);?></li>
                <li><label>City, State, Zip:</label><?php echo trim($order->billing_address['city'] . ' ' . $order->billing_address['state'] . ' ' . $order->billing_address['zip']);?></li>
                <li><label>Email: </label><a href='mailto:<?php echo $order->customer_email;?>'>Send Customer Email</a></li>
                <li><label>Phone: </label><?php echo $order->customer_phone;?></li>
            </ul>
        </div>  
        <div class='address_info right'>
            <h3>Shipping Info</h3>
            <ul>
                <input type="hidden" id="shipping" value="<?php echo $order->shipping_address; ?>" />
                <li><label>Name: </label><?php echo $order->shipping_address['name']; ?></li>
                <li><label>Address 1: </label><?php echo $order->shipping_address['addr1'];?></li>
                <li><label>Address 2: </label><?php echo $order->shipping_address['addr2'];?></li>
                <li><label>City, State, Zip:</label><?php echo $order->shipping_address['city'] . ' ' . $order->shipping_address['state'] . ' ' . $order->shipping_address['zip']?></li>
                <li><label></label></li>
                <li><label></label></li>
                <li><label></label></li>
            </ul>
  </body>
</html>
于 2013-01-19T01:29:46.320 に答える