2013-01-19 3 views
-1

아래와 같이 현재 변수를 출력하는 개체를 작성하고 주문했습니다.대금 청구 정보 주소와 배송 정보 주소가 같을 때의 경고

경고를 보내고 싶습니다 ... 두 개의 div가 녹색으로 강조 표시됩니다. 여기 .. ​​내가 몇 가지 jQuery를 통합해야합니다 가정 내가 가진 무엇을 해요 : 저는 현재 색상을 가져가 일부 CSS를 사용하고

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

.

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

내가 내 진짜 문제는 내 데이터에 JQuery와 이벤트를 실행하는 방법을 추측 :

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; } 

그래서 여기 내 업데이 트입니다. 시작에서 너무 모호한 것에 대해 유감스럽게 생각한다. 우리는 오른발에서 내리지 않았다. 그래도 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/) [FAQ]를 참조하십시오. –

+1

나를 이길,^ –

+1

나는 PHP를 사용하여 내용이 같은지 확인한다. 그렇다면 동일한 내용을 나타 내기 위해 DIVS에 CSS 클래스를 적용하십시오. – 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를 포함 정확했다. 자바 스크립트의 클라이언트 나 PHP의 서버에서이 작업을 수행 할 수 있습니다. 시도해보고 문제가 생겼을 때 돌아와.

PHP에서는 비교 결과를 사용하여 div에 CSS 클래스를 설정할 수 있습니다. 그런 다음 스타일 시트에서 해당 클래스를 기반으로 배경색을 설정하십시오.

JavaScript에서는 더 복잡하지만 서버로의 출장은 필요하지 않습니다.

+0

저도 그렇게 생각하지 않았지만, 이것이 의견이어야한다고 제안 할 것입니다. – Hailwood

+0

everybodys downvoting everything .. 무엇이 ... ehhh –

+0

숟가락으로 먹이를주지 않으면 OP 질문에 답해줍니다. 어떤 사람들은 너무 빨리 다운볼트를 할 수 있습니다. 나는 당신이 논평 한 것을 남겨 두었을 것이다. 그러나 그것은 이미 거기에 있었다. 나는 단지 그것을 투표했다. 그리고 "당신은 나를 그것에 꺾었다". –

관련 문제