2013-01-19 41 views
-1

我已經構建並排序了輸出當前變量的對象,如下所示。當帳單信息地址和送貨地址相同時的警報

我想警惕......兩個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;} 
+9

[你有什麼嘗試?](http://www.whathaveyoutried.com/)請參閱[常見問題]。 –

+1

打我吧,^ –

+1

我建議:使用PHP來判斷內容是否相同。如果是這樣,請將CSS類應用於DIVS以指示相同的內容。 – showdev

回答

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> 
+0

感謝所有的幫助,我完成了,你可以看到我上面的編輯。雖然我沒有使用你的代碼,但我會注意到它以備將來參考。謝謝。歡迎您致電 –

+0

,很高興爲您服務。 –

2

你是正確的,包括PHP和jQuery。您可以在JavaScript中的客戶端或PHP中的服務器上執行此操作。嘗試一下,當有問題時再回來。

在PHP中,您可以使用比較結果在div上設置CSS類。然後在樣式表中設置基於該類的背景顏色。

在JavaScript中它會更復雜,但不需要去服務器。

+0

是不是我downvoted,但我會建議這應該是一個評論。 – Hailwood

+0

everybodys downvoting everything ..什麼給... ehhh –

+0

它回答沒有勺子餵養的OP問題。有些人太快而不滿意。我會留下你曾嘗試過的評論,但它已經在那裏了,我剛剛投了票,還有「你打敗了我」。 –

相關問題