2009-06-17 10 views
5

Ho un menu a discesa sulla mia pagina, sto modificando il valore selezionato del menu a discesa dalla finestra popup utilizzando javascript. Ho qualche logica nell'evento SelectedIndexChanged a discesa, quindi ho bisogno di attivare l'evento SelectedIndexChanged quando la selezione del menu a discesa è cambiata da javascript.Vuoi attivare l'evento Dropdown SelectedIndexChanged in Javascript

risposta

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

questo dovrebbe funzionare, se si sta ancora ricevendo qualche errore, si può provare in questo modo:

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

yourcontrolClientSideID è l'ID dell'ID client reso.

+3

usa "yourDropdown.ClientID" (con ID in maiuscolo) ... –

1

chiamata onchange metodo come che al lato client:

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

EDIT: Se si imposta la proprietà AutoPostBack del menu a discesa su true, il codice di cui sopra sarà inviare la pagina al server, che il vostro evento lato server sarà essere chiamato.

Ma se si desidera chiamare manualmente il vostro evento, si possono tutti ovunque nel codebehind della tua pagina così:

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

ma voglio sparare lato server discesa evento SelectedIndexChanged, ho la mia logica sul lato server. –

+0

ma facendo questo document.getElementById ('yourDropdownsClientId'). Onchange(); ottenendo l'errore javascript. –

0

sì ... Penso che quello che ha detto Canavar funzionerà, ma dovrà cercare ti piace questa

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

Ecco un esempio di lavoro:

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) 
} 
} 
Problemi correlati