Array
(
    [0] => stdClass Object
        (
            [Votos_Balanceados] => 1
            [id] => 530827
            [titulo] => Como setar a posição de uma lista select via jquery ?
            [dataCadastro] => DateTime Object
                (
                    [date] => 2015-09-05 11:32:07
                    [timezone_type] => 3
                    [timezone] => America/Sao_Paulo
                )

            [isFirstPost] => -1
            [idUsuario] => 370829
            [status] => A
            [isExample] => 
            [NomeUsuario] => Gabriell Lopes Renovato Amaral
            [Apelido] => Lopes
            [Foto] => 370829_20140520110139.jpg
            [Conteudo] => Penso que você poderia utilizar o selected attribute com sua lógica. Verificar se o fornecedor do produto for igual a algum da listagem e atribui como selecionado.
Veja o exemplo no w3schools.

http://www.w3schools.com/tags/att_option_selected.asp

Espero ter ajudado. ) )

Como setar a posição de uma lista select via jquery ?

Adriano Cordeiro
|
MVP
Pontos: 200
    05 set 2015

Bom dia!,
Como faço para posicionar o "Fornecedor" correspondente ao "Produto" ao abrir a tela de Edição do Produto ?
Esse é o código que traz a lista de todos os "Fornecedores":
#Código

$.ajax({
                    url: "/Fornecedor/ListarFornecedor",
                    type: "POST",
                    dataType: "json",
                    contentType: "application/json; charset=uft-8",
                    data: null,
                    success: function (data) {
                        $.each(data.Result, function (i, item) {
                            $("#ddlFornecedor").append("<option value=" + item.TBFORNECEDORID + ">" + item.DSFORNECEDOR + "</option>")
                        });
                    },
                    error: function (xhr, err) {
                        alert("erro:" + err.message);
                    }
                });

Na view tenho o ID do Fornecedor (TBFORNECEDORID ):
#Código
<input type="hidden" value="" id="hidTBPRODUTOID"/>

Os Fornecedores são carregados com sucesso:
Clique na imagem para abrir em uma nova janela
Porém na lista o Fornecedor não fica posicionado:
Clique na imagem para abrir em uma nova janela
Obrigado!

Post mais votado

Lopes
|
MVP
Pontos: 1805
    05 set 2015

Penso que você poderia utilizar o selected attribute com sua lógica. Verificar se o fornecedor do produto for igual a algum da listagem e atribui como selecionado.
Veja o exemplo no w3schools.

http://www.w3schools.com/tags/att_option_selected.asp

Espero ter ajudado.

Adriano Cordeiro
|
MVP
Pontos: 200
    05 set 2015

Não sei se é a melhor maneira, mas fiz assim:

#Código

$.each(data.Result, function (i, item) {
                            var selected = "";

                            if (item.TBFORNECEDORID == $("#hidTBPRODUTOID").val()) {
                                selected = " selected";
                            } else {
                                selected = "";
                            };

                            $("#ddlFornecedor").append("<option value=" + item.TBFORNECEDORID + " " + selected + " >" + item.DSFORNECEDOR + "</option>")

                        });