Solucionado (ver solução)
Solucionado
(ver solução)
7
respostas

JavaScript não funciona

Bom dia! Resolvi fazer um projeto para fixar o aprendizado. Mas não está funcionando. Consegue dizer qual o erro? Eu escrevo a linha do banco de dados a ser excluida.

<form>

    <label for="apagar">Linha a ser apagada:</label>
    <br />
    <input type="text" id="Apagar a Linha">
    <button onblur="clickApaga(this)">Apagar a Linha</button>

</form>



@section Scripts {


        <script type="text/javascript">
            function clickApaga(btn) {
                var linha = $(btn).siblings('[apagar]');
                var apagar = $(linha).find('input').val();


                var data = {
                    apagar: apagar,
                };

                $.ajax({
                    url: "/Home/apagarLinha",
                    type: "POST",
                    contentType: 'application/json',
                    data: JSON.stringify(data)
                });

            }
        </script>

    }
      [HttpPost]
        public void apagarLinha([FromBody]int apagar)
        {

            atualizarMapeamento.apagar(apagar);

        }eu código aqui
public void apagar(int apagar)
        {
            List<Mapeamento> lista = contexto.Set<Mapeamento>().ToList();

            lista.RemoveAt(apagar);

            contexto.SaveChanges();
        }
7 respostas

Boa tarde, Caio! Como vai?

Vc já verificou se no console do navegador aparece alguma mensagem de erro relativo ao JavaScript? Se sim, vc poderia copiar e colar aqui o log completo do erro que aparece? Assim eu poderei te ajudar de forma mais efetiva.

Grande abraço e bons estudos, meu aluno!

Gabriel, boa tarde!

Atualizei, esquece os códigos antigos. Este é o código com problema:

postQuantidade(data) {
    $.ajax({
        url: '/Home/UpdateQuantidade',
        type: 'POST',
        contentType: 'application/json',
        data: JSON.stringify(data)           
    });

Eu tento incrementar um número, só que ele retorna sempre zero, mesmo se ele começa com outro valor (1, por exemplo). Se eu uso string, ele retorna nulo. Acho que há um problema na conversão do valor application/json que eu não sei o que significa.

application é o nome do contexto? No caso utilizo ProjetoContexto.

solução!

Consegui. Estou fechando o tópico.

Opa, Caio! Que bom que vc conseguiu resolver!

Vc poderia compartilhar a solução que usou com o pessoal do fórum para que no futuro se mais pessoas tiverem problemas semelhantes ao seu possam ter uma luz a seguir?

Grande abraço e bons estudos, meu aluno!

Eu não sei o motivo disso, mas a solução foi colocar o incremento ou decremento, a mudança no valor pego, na própria função que pega o valor. Por exemplo:

var novaQtde = $(linhaDoItem).find('input').val() + 1;

invés de fazer essa mudança no valor pego.

novaQtde++

Estranho! Mas sem ter o código em si pra ver eu não teria como te ajudar a entender. Se quiser, pode enviar esse trecho completo do código que eu tento te ajudar a entender!