2009-06-17 10 views

cevap

9
document.getElementById('<%= yourDropdown.ClientID %>').onchange(); 

Bu hala bazı hata alıyorsanız, böyle deneyebilirsiniz, çalışması gerekir:

setTimeout('__doPostBack(\'yourcontrolClientSideID\',\'\')', 0); 

yourcontrolClientSideID, Rendered Client ID'nin kimliğidir. İşte

+3

"yourDropdown.ClientID" işlevini (büyük harfle) kullanın ... –

1

Çağrı:

document.getElementById('yourDropdownsClientId').onchange(); 

DÜZENLEME: true için açılan listesine en AutoPostBack özelliğini ayarlarsanız, kod yukarıdaki sunucu tarafı olay yerine, sunucuya sayfanızı yayınlayacağız olacak olarak adlandırılabilir. el olayı aramak isterseniz

Ama, bütün her yerde böyle sayfanızın codebehind içinde olabilir:

myDropDownList_SelectedIndexChanged(null, new EventArgs()); 
+0

ama ben sunucu tarafında benim mantığı, sunucu tarafında açılan Selectedındexchanged olayı istiyorum. –

+0

ama bu document.getElementById ('yourDropdownsClientId'). Onchange(); javascript hatası alıyorum. –

0

evet ... ben Canavar çalışacağını söylediğini düşünüyorum ama bakmak zorunda kalacak gibi bu

document.getElementById('<%=yourDropdown.ClientId%>').onchange(); 
1

çalışan bir örnektir:

function fireEvent(element,event){ 
if(document.createEvent){ 
// dispatch for firefox + others 
var evt = document.createEvent(”HTMLEvents”); 
evt.initEvent(event, true, true); // event type,bubbling,cancelable 
return !element.dispatchEvent(evt); 
} 
else{ 
// dispatch for IE 
var evt = document.createEventObject(); 
return element.fireEvent(’on’+event,evt) 
} 
} 
İlgili konular