Como fazer a primeira opção de
Foi útil?

Solução

$("#target").val($("#target option:first").val());

Outras dicas

Você pode tentar este

$("#target").prop("selectedIndex", 0);
// remove "selected" from any options that might already be selected
$('#target option[selected="selected"]').each(
    function() {
        $(this).removeAttr('selected');
    }
);


// mark the first option as selected
$("#target option:first").attr('selected','selected');

Quando você usa

$("#target").val($("#target option:first").val());

isto não vai funcionar no Chrome e Safari se o primeiro valor da opção é nulo.

Eu prefiro

$("#target option:first").attr('selected','selected');

porque ele pode trabalhar em todos os navegadores.

A alteração do valor da entrada de seleção ou ajustar o atributo selecionado pode substituir a propriedade selectedOptions padrão do elemento DOM, resultando em um elemento que pode não redefinir corretamente em um formulário que teve o evento de reposição chamado.

método prop Usar jQuery para limpar e definir a opção necessária:

$("#target option:selected").prop("selected", false);
$("#target option:first").prop("selected", "selected");
$("#target")[0].selectedIndex = 0;

Um ponto sutil I pensar eu descobri sobre o topo votou respostas é que mesmo que eles corretamente alterar o valor selecionado, eles não atualizar o elemento que o usuário vê (somente quando clicarem o widget eles vão ver uma seleção ao lado do elemento atualizado).

Encadeamento uma chamada .change () até o fim também vai atualizar o UI Widget bem.

$("#target").val($("#target option:first").val()).change();

(Note que eu notei isso enquanto usando jQuery Mobile e uma caixa no desktop Chrome, por isso pode não ser o caso em todos os lugares).

Se você tem opções com deficiência, você pode adicionar não ([disabled]) para evitar selecionando-o que resulta no seguinte:

$("#target option:not([disabled]):first").attr('selected','selected')

Outra maneira para repor os valores (por vários elementos seleccionados) poderia ser a seguinte:

$("selector").each(function(){

    /*Perform any check and validation if needed for each item */

    /*Use "this" to handle the element in javascript or "$(this)" to handle the element with jquery */

    this.selectedIndex=0;

});
$('#newType option:first').prop('selected', true);

Simples assim:

$('#target option:first').prop('selected', true);

Descobri que apenas attr configuração selecionada não funciona se já existe um atributo selecionado. O código que eu uso agora vai primeiro resetar o atributo selecionado, em seguida, selecione a primeira opção.

$('#target').removeAttr('selected').find('option:first').attr('selected', 'selected');

Aqui está como eu faria isso:

$("#target option")
    .removeAttr('selected')
    .find(':first')     // You can also use .find('[value=MyVal]')
        .attr('selected','selected');

Embora a cada função, provavelmente, não é necessário ...

$('select').each(function(){
    $(this).find('option:first').prop('selected', 'selected');
});

funciona para mim.

Ele só trabalhou para mim usando um disparador ( 'mudança') no final, como este:

$("#target option:first").attr('selected','selected').trigger('change');

Se você estiver indo para usar a primeira opção como um padrão como

<select>
    <option value="">Please select an option below</option>
    ...

então você pode apenas usar:

$('select').val('');

É agradável e simples.

Na parte de trás da resposta de James Lee Baker, eu prefiro esta solução, pois elimina a dependência de suporte ao navegador para: em primeiro lugar: selecionado ...

$('#target').children().prop('selected', false);
$($('#target').children()[0]).prop('selected', 'selected');

Para mim só funcionou quando eu adicionei o seguinte código:

.change();

Para mim só funcionou quando eu adicionei o seguinte código: Como eu queria "reset" a forma, isto é, selecione todas as primeiras opções de todos os seleciona de forma, eu usei o seguinte código:

$('form').find('select').each(function(){ $(this).val($("select option:first").val()); $(this).change(); });

Use:

$("#selectbox option:first").val()

Por favor, encontrar o simples trabalhando em este jsFiddle.

$("#target").val(null);

Belas trabalhou em cromo

Se você está armazenando o objeto jQuery do elemento select:

var jQuerySelectObject = $("...");

...

jQuerySelectObject.val(jQuerySelectObject.children().eq(0).val());

Marque esta melhor abordagem usando jQuery com ECMAScript 6 :

$('select').each((i, item) => {
  var $item = $(item);
  $item.val($item.find('option:first').val()); 
});

Para mim, só funcionou quando eu adicionei a seguinte linha de código

$('#target').val($('#target').find("option:first").val());

Você pode selecionar qualquer opção de dropdown usando-o.

// 'N' can by any number of option.  // e.g.,  N=1 for first option
$("#DropDownId").val($("#DropDownId option:eq(N-1)").val()); 

$('select#id').val($('#id option')[index].value)

Substitua o id com particular select id tag e index com particular elemento que você deseja selecionar.

i.

<select class="input-field" multiple="multiple" id="ddlState" name="ddlState">
                                        <option value="AB">AB</option>
                                        <option value="AK">AK</option>
                                        <option value="AL">AL</option>
</select>

Então aqui para primeira seleção elemento vou usar seguinte código:

$('select#ddlState').val($('#ddlState option')[0].value)

Isso funcionou para mim!

$("#target").prop("selectedIndex", 0);

Use:

alert($( "#target option:first" ).text());
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top