2013-08-21 2 views
0

현재 저는 1 개의 등록 양식을 가진 프로젝트를 진행하고 있습니다. 이 양식에서는 한 번에 여러 회원을 추가 할 수 있습니다. 첫 번째 구성원은 필수이고 다른 구성원은 필요하지 않습니다. 더 많은 멤버를 추가하기 위해 jQuery에서 'append'를 사용하여 두 번째 멤버와 세 번째 멤버의 폼을 완벽하게 추가합니다.양식을 추가하고 바인드로 채우기

이제 우편 번호를 기입 할 때 거리 이름과 도시를 자동으로 채우는 코드를 추가하고 싶습니다.

json과 json을 사용하여 양식 필드를 채 웁니다. 나는이 코드를 사용합니다 :

 $('input[name=postcode_1]').change(function(){ 
      //100420// 
      b_postcode = $('input[name=postcode_1]').val(); 
      $.getJSON('/inc/getPostcodeInfo.php', {postcode:b_postcode}, function(data) { 
        $('input[name=adres_1]').val(''); 
        $('input[name=plaats_1]').val('');    
       $.each(data, function(index, array) { 
       // alert(array['straat']);      
        $('input[name=adres_1]').val(array['straat']); 
        $('input[name=plaats_1]').val(array['woonplaats']); 
       }) 

      }); 
     }); 

이것은 1 명의 회원에게는 완벽하게 작동하지만 두 번째와 세 번째 회원을 추가하면 작동하지 않습니다.

html.bind('change', '[name=postcode_'+ count +']', function(){ 

      b_postcode = $('input[name=postcode_'+ count +']').val(); 
      $.getJSON('/inc/getPostcodeInfo.php', {postcode:b_postcode}, function(data) { 
        $('input[name=adres_'+ count +']').val(''); 
        $('input[name=plaats_'+ count +']').val('');     
       $.each(data, function(index, array) { 
       // alert(array['straat']);      
        $('input[name=adres_'+ count +']').val(array['straat']); 
        $('input[name=plaats_'+ count +']').val(array['woonplaats']); 
       }) 

      }); 
     }); 

(때마다 새로운 멤버가 추가 될 수가 계산됩니다 ++)

: 나는 내가 너무 좋아 두 번째와 세 번째 멤버에 사용되는 것입니다 기능 '바인딩'을 사용할 필요가 거라고 읽기 이것은 마지막으로 추가 된 회원에게만 작용하는 것으로 보입니다. 모든 회원의 성 이름과 도시를 자동으로 채울 수 있도록이 작업을 어떻게 할 수 있습니까?

정보 회원 :

회원 1 -을 PostalCode : 1111 AA

회원 2 - portalcode : 2222 BB

회원 3 -을 PostalCode : JQuery와> =를위한 3333 CC

답변

0

시도 (1.7)

$(document).on('change', '[name^=postcode_]', function(){ 
    var $this = $(this), count = $this.attr('name').match(/(\d+)/)[1]; 

    b_postcode = $(this).val(); 
    $.getJSON('/inc/getPostcodeInfo.php', {postcode:b_postcode}, function(data) { 
     $('input[name=adres_'+ count +']').val(''); 
     $('input[name=plaats_'+ count +']').val('');     
     $.each(data, function(index, array) { 
      // alert(array['straat']);      
      $('input[name=adres_'+ count +']').val(array['straat']); 
      $('input[name=plaats_'+ count +']').val(array['woonplaats']); 
     }) 

    }); 
}); 
+0

감사합니다. 그래도 질문이 있습니다. 이 조각이 무엇을하는지 말해 주시겠습니까? $ this.attr ('name'). match (/ (\ d +) /) [1]; ' – user2485647

+0

'count '값을 이름에서 찾는 정규식입니다. 속성 –

관련 문제