2012-11-08 2 views
2

ajax 성공 함수에서 vktemplate을 사용하여 일부 항목을 드롭 다운에 넣었습니다. 그러나 사용자가 주소 이름을 선택할 때 jquery 데이터 개체에서 전체 주소를 빠르게 가져올 수 있도록 일부 데이터를 첨부하고 싶습니다.jquery data giving error : undefined

success: function (returnedData) { 

    $('.vendor_address_select').vkTemplate('templates/vendor_addresses_by_sector_dropdown_template.tmpl?<?=time()?>', returnedData, function() { 

     $.each(returnedData, function (key, val) { 
      var id = val.id; 

      //dropdown option looks like this: 
      //<option id="vendor_address_id_22">company1</option> 
      $('#vendor_address_id_' + id).data('address', { 
       'vendorName': val.vendor_name, 
       'address1': val.address1, 
       'address2': val.address2, 
       'city': val.city, 
       'state': val.state, 
       'zip': val.zip 
      }); 

     }); 

    }); 
} 

것은 나에게이 오류 catch되지 않은 형식 오류를주고있다 :이 같은 데이터에 액세스하려고 할 때 정의되지 않은

방법 '분할'을 호출 할 수 없습니다 :

$(document).ready(function() { 
    $('.vendor_address_select').change(function() { 

     var selectedAddress = $('option:selected', this); 
     console.log(selectedAddress.data()); 

    }); 
}); 

jquery의 data()을 어떻게 오용하고 있습니까?

템플릿 파일 :

<% for (var i = 0 in o) { %> 
<option id="vendor_address_id_<%=o[i].id%>"> 
<%=o[i].vendor_name%></option> 
<% } %> 

답변

4

당신은 너무

$(document).ready(function() { 
    $('.vendor_address_select').change(function() { 

     var selectedAddress = $('option:selected', this); 
     console.log(selectedAddress.data('address')); 

    }); 
}); 
+0

멋진처럼 .data()를 사용할 때 키 '주소'를 지정해야합니다! 대단히 감사합니다! – 1252748