2010-04-21 12 views
6

Tengo un conjunto de botones de opción. Cuando se selecciona primario, el campo Compañía principal está oculto. También me gustaría, en este momento, borrar la selección desplegable. ¿Cómo puedo hacer esto?Borrar selección desplegable en el botón de radio haga clic en

<p> 
     <label>Company Type:</label> 
     <label for="primary"><input onclick="javascript: $('#sec').hide('slow');" type="radio" runat="server" name="companyType" id="primary" checked />Primary</label> 
     <label for="secondary"><input onclick="javascript: $('#sec').show('slow');" type="radio" runat="server" name="companyType" id="secondary" />Secondary</label> 
     <div id="sec"> 
     <label for="primary_company">Primary Company:</label> 
      <%= Html.DropDownList("primary_company", Model.SelectPrimaryCompanies, "** Select Primary Company **") %> 
     </div> 

    </p> 

Respuesta

8

Puede borrar la selección (es decir, seleccione la primera opción), así:

$("#primary_company").find('option:first') 
        .attr('selected','selected'); 
+0

+1. pero ¿por qué la parte '.parent ('select');'? Podrías simplemente usar '.end()', ¿verdad? –

+0

@David - eso fue parte de una cadena más larga para servir a un mal propósito. (Pegué demasiado código de una de mis páginas de prueba), pero ahora que lo señala, 'end' es mejor que' parent ('select') '. Gracias. – karim79

0

Para borrar la selección por completo (por lo que se ha seleccionado ni siquiera el primer elemento) se puede utilizar :

$('#primary_company').attr('selectedIndex', '-1'); 

Si #primary_company es un cuadro de selección múltiple que puede usar:

$('#primary_company option').attr('selected', false); 
0
$("#primary_company").find('[selected]').removeAttr("selected"); 
4

Puede pasar nulo al método jQuery val() como una buena forma de borrar un menú desplegable.

$('#primary_company').val(null); 
Cuestiones relacionadas