2014-07-14 2 views
-1

청구서 수신 주소를 우편물 주소로 설정하는 확인란이 있습니다. 확인란을 선택하면 두 값이 항상 동일합니다. 하나가 변경되면. 지금은 상자가 체크 된 후 우편 주소를 복사하도록 청구서 수신 주소를받을 수 있지만 나중에 값을 변경하면보기가 업데이트되지 않습니다. 여기에 지금까지 무엇을 가지고 :입력 필드의 값을 항상 다른 입력 필드와 같게하려고합니다.

createcustomer.html :

<section class="mainbar" data-ng-controller="createcustomer as vm"> 
<div class="col-md-4"> 
          <label for="txtMailingAddress1">Address 1:</label> 
         </div> 
         <div class="col-md-8"> 
          <input type="text" id="txtMailingAddress1" name="txtMailingAddress1" value="" data-ng-model="vm.MailingAddress1" class="form-control FloatLeft" required /> 
         </div> 

<input type="checkbox" id="checkboxSameAddress" data-ng-model="vm.IsBillingMailing" data-ng-change="vm.copyMailingAddress()" />Check if billing address same as mailing address 

<div class="form-group"> 
         <div class="col-md-4"> 
          <label for="txtBillingAddress1">Address 1:</label> 
         </div> 
         <div class="col-md-8"> 
          <input type="text" id="txtBillingAddress1" name="txtBillingAddress1" data-ng-model="vm.BillingAddress1" class="form-control FloatLeft" required /> 
         </div> 
        </div> 
</section> 

createcustomer.js

function copyMailingAddress() { 
      if (vm.IsBillingMailing) { 
       vm.BillingAddress1 = vm.MailingAddress1; 
      } 
      else { 
       vm.BillingAddress1 = ''; 
      } 
     } 

답변

0

완전히 잘못 될 것입니다. Angular를 적용해야합니다.

http://jsfiddle.net/RpfNd/

var app = angular.module('shippingApp', []); 

app.controller('ShippingCtrl', function ($scope) { 
    $scope.mailing = { 
     first: 'Jon', 
     last: 'Doe', 
     address1: '123 Main Street' 
    }; 
    $scope.billing = {}; 
    $scope.billing_same = false; 

    $scope.$watch('billing_same',function(same_as_shipping) { 
     if (same_as_shipping) { 
      $scope.billing = $scope.mailing; 
     } 
     else { 
      $scope.billing = {}; 
     } 
    }); 
}); 
-1

편집 : 질문 AngularJS와 관련 몰랐어요. 제목이나 질문에 언급되지 않았습니다. 아래에 댓글을 올린 후 주목한 태그. 이 페이지에 쓸모가 없다면이 대답을 삭제하십시오. 감사합니다

---------- 원래 대답 -------------

쉽게 솔루션 (내가 게으름에서 어쩌면 사용하는 무엇을 보인다)과 그것의 또한 내 의견의 오류로부터 더 안전합니다.

"우편 주소와 동일한 사용"경우

양식이 게시 될 때 다음, (당신이 PHP를 사용하는 가정) 따라서 유효성을 검사/자바 스크립트로 모든 청구 주소 필드를 해제 한 후

jQuery를

를 판정한다

if(isset($_POST['checkboxSameAddress'])){ 
    $txtBillingAddress1 = $txtMailingAddress1; 
    $txtBillingAddress2 = $txtMailingAddress2; 
    //and so on 
} 

값이 jQuery를/자바 스크립트에 너무 많은 조작없이 동일 당신이 보장하고이 방법

참고 :이 대한 name 속성을 필요로 입력 확인란

작동합니다
+0

-1 PHP는 내가 AngularJS와 태그를 인식하지 않았다 @charlietfl – charlietfl

+0

바인딩 내부 데이터가 자바 스크립트 프레임 워크에 값이없는 다음은이 작업을 수행 할 수있는 한 가지 방법입니다. 질문자는 질문이나 제목으로 진술하지 않았다. – Onimusha

관련 문제