рдореИрдВ рдмрдЯрди рдХреНрд▓рд┐рдХ рдХреЗ рдмрд╛рдж рдПрдХ рдЪрдпрди рдЦреЛрд▓рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ, рд▓реЗрдХрд┐рди рдпрд╣ рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред рдЕрдЧрд░ рдореИрдВ рдЯреНрд░рд┐рдЧрд░ рдХреЗ рдмрд╛рдж рд╕рдореНрдорд┐рд▓рд┐рдд рдХрд░рддрд╛ рд╣реВрдВ рдФрд░ рдЕрд▓рд░реНрдЯ () рдЦреЛрд▓рддрд╛ рд╣реВрдВ рддреЛ рдпрд╣ рдЦреБрд▓рддрд╛ рд╣реИ ...
(jquery рдХреЗ рд╕рд╛рде рдЪреБрдиреЗ рд╣реБрдП v1.0 рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛)
рдЙрджрд╛рд╣рд░рдг:
<select id="select">
<option value="1">a</option>
<option value="2">b</option>
<option value="3">c</option>
</select>
<br>
<button onclick="$('#select').trigger('chosen:open'); ">Press this button to open (doesnt work) </button>
<button onclick="$('#select').trigger('chosen:open'); alert('ups!');">Press this button to open (work???)</button>
<script>
$(document).ready(function() {
$('#select').chosen();
});
</script>
рдЙрджрд╛рд╣рд░рдг рдореЗрдВ: http://jsfiddle.net/EArg6/28/
рдЖрдкрдХреЗ рдлрд┐рдбрд▓ (рд╕рдлрд╛рд░реА рдореЗрдВ) рдореЗрдВ рди рддреЛ рдмрдЯрди рдореЗрд░реЗ рд▓рд┐рдП рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред
рдЖрдк рдХрд┐рд╕ рдмреНрд░рд╛рдЙрдЬрд╝рд░/рд╕рдВрд╕реНрдХрд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣реЗ рд╣реИрдВ?
рдореИрдВрдиреЗ рдЗрд╕рдХреЗ рд╕рд╛рде рдкрд░реАрдХреНрд╖рдг рдХрд┐рдпрд╛:
рдкрд╣рд▓рд╛ рдмрдЯрди рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛
рджреВрд╕рд░рд╛ рдмрдЯрди рд╡рд┐рдХрд▓реНрдк рд╕реВрдЪреА рдЦреЛрд▓рддрд╛ рд╣реИ (рдХреЗрд╡рд▓ рддрднреА рдмрдВрдж рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЬрдм рдореИрдВ "рдЕрд▓рд░реНрдЯ" рдмреЙрдХреНрд╕ рдмрдВрдж рдХрд░рддрд╛ рд╣реВрдВ)ред
рдЬрдм рдЖрдк рдмрдЯрди рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдЪреБрдирд╛ рдХреЛ chosen:open
рдИрд╡реЗрдВрдЯ рдкреНрд░рд╛рдкреНрдд рд╣реЛ рд░рд╣рд╛ рд╣реИред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдШрдЯрдирд╛ рдбреАрдУрдПрдо рдХреЛ рдмреБрд▓рдмреБрд▓рд╛ рдХрд░рдирд╛ рдЬрд╛рд░реА рд░рдЦрддреА рд╣реИ рдФрд░ рдЪреБрдирд╛ рддреБрд░рдВрдд рдЙрд╕ рддрддреНрд╡ рдкрд░ рдПрдХ рдХреНрд▓рд┐рдХ рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛ рд░рд╣рд╛ рд╣реИ рдЬреЛ рд╕рдХреНрд░рд┐рдп рдЪреБрдирд╛ рдирд╣реАрдВ рд╣реИ ... рдЗрд╕рд▓рд┐рдП рдпрд╣ рдЗрд╕реЗ рдмрдВрдж рдХрд░ рджреЗрддрд╛ рд╣реИред рд╕рд╣реА рдмрд╛рдд?
рдпрджрд┐ рдЖрдк рдЗрдирд▓рд╛рдЗрди JS рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рддреЛ рд╕рдмрд╕реЗ рдЖрд╕рд╛рди рдЙрдкрд╛рдп рд╣реИ setTimeout
рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╡рд░реНрддрдорд╛рди рдИрд╡реЗрдВрдЯ рд╕реНрдЯреИрдХ рд╕реЗ рдмрд╛рд╣рд░ рдирд┐рдХрд▓рдирд╛:
onClick="setTimeout(function(){ $('#select').trigger('chosen:open'); }, 0)"
рд╣рд╛рд▓рд╛рдВрдХрд┐, рдЖрдкрдХреЛ рд▓рдЧрднрдЧ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдЗрдирд▓рд╛рдЗрди рдЬреЗрдПрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред рдпрджрд┐ рдЖрдк рдЪрд╛рд╣реЗрдВ рддреЛ рдЖрдк рдЕрднреА рднреА setTimeout
рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдИрд╡реЗрдВрдЯ рдмрдмрд▓рд┐рдВрдЧ рдХреЛ рд░реЛрдХрдирд╛ рд╣реА рдкрд░реНрдпрд╛рдкреНрдд рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред
$('button').on("click", function(evt){
evt.stopPropagation();
$('#select').trigger('chosen:open');
});
рдореИрдВрдиреЗ рдЗрд╕ рдХрд╛рдордХрд╛рдЬреА рдХреЛрдб рдХреЗ рд╕рд╛рде рдЖрдкрдХреА рдкрд╣реЗрд▓реА рдХреЛ рдЕрдкрдбреЗрдЯ рдХрд░ рджрд┐рдпрд╛ рд╣реИ: http://jsfiddle.net/EArg6/33/
рдзрдиреНрдпрд╡рд╛рдж @pfiller
рдзрдиреНрдпрд╡рд╛рдж @pfiller , рдЙрд╕ рд╕рдорд╛рдзрд╛рди рдФрд░ рд╕реНрдкрд╖реНрдЯреАрдХрд░рдг рдиреЗ рдореБрдЭреЗ рдмрд╣реБрдд рдирд╛рд░рд╛рдЬрд╝рдЧреА рд╕реЗ рдмрдЪрд╛рдпрд╛!
рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА
рдЬрдм рдЖрдк рдмрдЯрди рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдЪреБрдирд╛ рдХреЛ
chosen:open
рдИрд╡реЗрдВрдЯ рдкреНрд░рд╛рдкреНрдд рд╣реЛ рд░рд╣рд╛ рд╣реИред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдШрдЯрдирд╛ рдбреАрдУрдПрдо рдХреЛ рдмреБрд▓рдмреБрд▓рд╛ рдХрд░рдирд╛ рдЬрд╛рд░реА рд░рдЦрддреА рд╣реИ рдФрд░ рдЪреБрдирд╛ рддреБрд░рдВрдд рдЙрд╕ рддрддреНрд╡ рдкрд░ рдПрдХ рдХреНрд▓рд┐рдХ рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛ рд░рд╣рд╛ рд╣реИ рдЬреЛ рд╕рдХреНрд░рд┐рдп рдЪреБрдирд╛ рдирд╣реАрдВ рд╣реИ ... рдЗрд╕рд▓рд┐рдП рдпрд╣ рдЗрд╕реЗ рдмрдВрдж рдХрд░ рджреЗрддрд╛ рд╣реИред рд╕рд╣реА рдмрд╛рдд?рдпрджрд┐ рдЖрдк рдЗрдирд▓рд╛рдЗрди JS рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рддреЛ рд╕рдмрд╕реЗ рдЖрд╕рд╛рди рдЙрдкрд╛рдп рд╣реИ
setTimeout
рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╡рд░реНрддрдорд╛рди рдИрд╡реЗрдВрдЯ рд╕реНрдЯреИрдХ рд╕реЗ рдмрд╛рд╣рд░ рдирд┐рдХрд▓рдирд╛:рд╣рд╛рд▓рд╛рдВрдХрд┐, рдЖрдкрдХреЛ рд▓рдЧрднрдЧ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдЗрдирд▓рд╛рдЗрди рдЬреЗрдПрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред рдпрджрд┐ рдЖрдк рдЪрд╛рд╣реЗрдВ рддреЛ рдЖрдк рдЕрднреА рднреА
setTimeout
рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдИрд╡реЗрдВрдЯ рдмрдмрд▓рд┐рдВрдЧ рдХреЛ рд░реЛрдХрдирд╛ рд╣реА рдкрд░реНрдпрд╛рдкреНрдд рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПредрдореИрдВрдиреЗ рдЗрд╕ рдХрд╛рдордХрд╛рдЬреА рдХреЛрдб рдХреЗ рд╕рд╛рде рдЖрдкрдХреА рдкрд╣реЗрд▓реА рдХреЛ рдЕрдкрдбреЗрдЯ рдХрд░ рджрд┐рдпрд╛ рд╣реИ: http://jsfiddle.net/EArg6/33/