2011-04-27 2 views
11

나는 아래처럼 드롭 다운에 등록 된 jQuery 플러그인을 가지고있다 :jQuery를 선택하여 val()을 내리고 이벤트를 트리거하는 방법은 무엇입니까?

그러나 onchange 이벤트는 트리거하지 않는다. 그 전에 등록되었습니다. 따라서 val()은 드롭 다운 위치 만 변경하지만 실제로 onchange 이벤트는 변경되지 않습니다. 누구든지 도와 줄 수 있습니까?

BTW, 이것이 도움이되면 등록 된 코드입니다.

 $.fn.extend({ 
     linkToStates: function(state_select_id) { 
     $(this).change(function() { 
     var country = $(this).attr('value'); 
     $(state_select_id).removeOption(/.*/); 
     switch (country) { 
      case 'Canada': 
      $(state_select_id).addOption(canadian_provinces, false); 
      break; 
      case 'United States': 
      $(state_select_id).addOption(us_states, false); 
      break; 
      default: 
      $(state_select_id).addOption({ '' : 'Please select a Country'}, false); 
      break; 
     } 
     }); 
    } 
    }); 

답변

22

이 시도 :

$('#country').val('United States').trigger('change'); 

또는

$('#country').val('United States').change(); 

당신은 더 약 .trigger()herehere

+0

.change()은 어떻게 든 매번 변경 이벤트를 트리거하지 않습니다 읽을 수 있습니다. 여기 내 코드가있다. 'var jQuery2 = jQuery.noConflict(); \t jQuery2 ('# shipping_method_0') .val ('flat_rate'). change();'. 도와 주실 수 있니? – Vidhi

0

그냥 별도의 기능으로는 onChanged 코드를 삽입 한 다음이 값을 변경 한 후 그것을 호출 할 수 있습니다

BTW, 이것은이 도움이 경우 등록의 코드입니다.

관련 문제