Jump to content
Fórum Script Brasil

fiote

Membros
  • Posts

    563
  • Joined

  • Last visited

Everything posted by fiote

  1. Tenta assim: function materia(nome, n1, n2, n3, n4) { var $tbody = $('.live'); var $tr = $('<tr>').attr('id',nome).appendTo($tbody); $('<td>').html(nome).appendTo($tr); $('<td>').html(n1).appendTo($tr); $('<td>').html(n2).appendTo($tr); $('<td>').html(n3).appendTo($tr); $('<td>').html(n4).appendTo($tr); var total = parseFloat(n1)+parseFloat(n2)+parseFloat(n3)+parseFloat(n4); var media = total/4; $('<td>').html(media).appendTo($tr); if (media > 7) { var situacao = 'Aprovado'; } else if (media > 3) { var situacao = 'Prova Final'; } else { var situacao = 'Reprovado'; } $('<td>').html(situacao).appendTo($tr); }; $(window).ready(function() { materia('Artes', '6.0', '6.0', '6.0', '5.5'); materia('História', '6.0', '6.0', '6.0', '5.5'); }); https://jsfiddle.net/xc1cw7jz/
  2. Quase, rs; document.getElementById(lancamento).style.display.none não existe. O que você quer é: document.getElementById(lancamento).style.display = 'none'; O mesmo vale pro entrou 2. E isso é supondo que lancamento é uma variável que guarda o ID do select. Se o ID em si for 'lancamento', então ficaria assim: document.getElementById('lancamento').style.display = 'none'; ;)
  3. Sem problemas Felipe! Qualquer coisa estamos aqui ^_^
  4. Não perdi meu tempo escrevendo. Estava te parabenizando (sem sarcasmo), mas aparentemente você não gostou. Me desculpe, não tive a intenção de "falar o óbvio"! (novamente, sem sarcasmo) Não postei nada porque não sabia como ajudar e/ou não tive tempo de olhar seu post. Dá uma olhada nesse board, as últimas mensagens de ajuda foram quase todas minhas lol. Faço o possível para ajudar quem eu posso :)
  5. Conseguiu resolver sem ninguém ajudar? Melhor ainda, não acha? Continue assim ;)
  6. É javascript. Java é outra coisa ;) Saber usar onclick? Você poderia usar isso nos radio buttons e chamar a sua função somar() (que de soma não tem nada, lol).
  7. Bem, o fiddle roda (pelo menos aqui no meu pc) tanto no firefox quanto no chrome. Roda até no IE (!!). Deve ser alguma coisa com o restante do seu código =\
  8. Guilhe, 1) Você está pegando o valor do emprestimo (tipo 15.500,32) e tentando dar um parseFloat nele... a idéia é boa, mas o resultado é zuado. Se você der parseFloat em 15.500,32 o resultado vai ser 15.500 (quinze e meio, e não quinze mil e quinhentos). Então logo dessa linha aqui: // aqui pego o valor primeiro campo input var emprestimo = document.form_soma.valcontrato.value; Adicione essa daqui: // convertendo o valor do emprestimo de volta para número emprestimo = emprestimo.replace(/[.]/g,"").replace(/[,]/g,"."); 2) Você está usando uma função MascaraMoeda para formatar o campo, mas ela só está sendo chamada no onkeyPress do campo valcontrato. Por isso o resultado do cálculo não fica formatado. Pra resolver isso, vá nessa linha aqui do seu código: // mostro o resultado document.form_soma.resultado.value = resultado; E mude para: // mostro o resultado document.form_soma.resultado.value = resultado.toFixed(2); MascaraMoeda(document.form_soma.resultado, '.', ','); O toFixed(2) é necessário porque essa função MascaraMoeda não entende mais de duas casas decimais, e sua conta gerava valores tipo 254.412315232. 3) Porém, a função MascaraMoeda espera um 4º parâmetro (que não existe aqui), então vamos ter que alterá-la: Vá nessas linhas da função: var whichCode = (window.Event) ? e.which : e.keyCode; if (whichCode == 13) return true; key = String.fromCharCode(whichCode); // Valor para o código da Chave if (strCheck.indexOf(key) == -1) return false; // Chave inválida E mude o código para: if (e) { var whichCode = (window.Event) ? e.which : e.keyCode; if (whichCode == 13) return true; key = String.fromCharCode(whichCode); // Valor para o código da Chave if (strCheck.indexOf(key) == -1) return false; // Chave inválida } Espero que você tenta entendido o que eu quis dizer. Se não entender (por favor, pelo menos tente fazer, lol), fiz um fiddle pra você. ;)
  9. Resposta chata: a publicidade existe por um motivo. Você provavelmente está usando um serviço grátis né? Pois é, os servidores precisam ser pagos de alguma forma. Resposta técnica: Não é possível manipular conteúdo cross-domain. Exatamente por isso. =\
  10. Existem formas ótimas de você fazer isso, mas infelizmente você só vai aprender mais pra frente então ;) Boa sorte e qualquer coisa estamos aqui ;)
  11. Você sabe fazer uma requisição ajax no javascript?
  12. Yuri, javascript não consegue editar páginas "fisicamente". Ele só muda o que o usuário está vendo na hora. Se você fizer essa 'mudança' e dar f5, por exemplo, a mudança será desfeita. Pra mudar o html MESMO, recomendo PHP então.
  13. Pra pegar o valor do select, é só fazer variavel = document.getElementById('id_do_seu_select').value; Aí digamos que você tenha 3 selects e quer colocar o valor deles num outro input: v1 = document.getElementById('id_do_select_1').value; v2 = document.getElementById('id_do_select_2').value; v3 = document.getElementById('id_do_select_3').value; document.getElementById('id_do_outro_input').value = v1 + ',' + v2 +',' + v3;
  14. FMScript, parece que você está precisand contratar um profissional, rs.
  15. Ah, foi mal. O mozilla me trollou aqui. Bem... isso é css3. Não dá pra 'te ensinar a fazer esse efeito', porque o cara faz trilhões de coisas ali. Mas vai uma dica: http://ricostacruz.com/jquery.transit/. Esse plugin de jquery é bom pra caramba. Agora é você brincar com ele até conseguir replicar o que o cara fez.
  16. Existe alguma forma de marcar o tópico como "resolvido" aqui no scriptbrasil? lol.
  17. Outra dica: var to = new Date(); var from = new Date(to.getTime() - 1000 * 60 * 60 * 24 * 14); ... date: [from, to] Date() sem parâmetros retorna a data atual. var to = new Date(); // Thu Jul 24 2014 15:47:59 GMT-0300 (Hora oficial do Brasil) Date() com parâmetros deixa você setar qual data você quer. var from = new Date(to.getTime() - 1000 * 60 * 60 * 24 * 14); to.getTime() retorna a quantidade de milesegundos desde 1970 até a data que está dentro daquela variável (no nosso caso a data atual), se não me engano. Fazer from = new Date(to.getDate()) seria basicamente criar outra variável com a mesma data. new Date(to.getTime() - 1000) é a data contida em to menos 1000 milesegundos. Isto é, 1 segundo no passado. new Date(to.getTime() - 1000 * 60) é a data contida em to menos 60000 milesegundos = 60 segundos = 1 minuto no passado. -1000 * 60 * 60 = 60 minutos = 1 hora *24 = 24 horas = 1 dia *14 = 14 dias no passado. Isso quer dizer que o seu calendário aparentemente está limitado ao intervalo "-14 dias" até "Hoje". Se você quer "habilitar as datas subsequentes", basta você alterar esses valores. Da mesma forma que o você está voltando no tempo ao subtrair números do from, você pode avançar no tempo adicionando números ao to. Tipo assim: var agora = new Date(); var from = new Date(agora.toTime() - 1000 * 60 * 60 * 24 * 365); // um ano no passado var to new Date(agora.toTime() + 1000 * 60 * 60 * 24 * 365); // um ano no futuro ;)
  18. Essa parte aqui é que está setando o "mês atual" do calendário: current: new Date(to.getFullYear(), to.getMonth() - 1, 1) Tá vendo esse -1 aí? É uma dica ein.
  19. Bem, você pode usar uma solução pronta. ;)
  20. Esse erro é de javascript. Você viu o que eu postei no finalzinho?
  21. Que erro que deu? Era exatamente isso que eu queria que você fizesse mesmo.
  22. Não coloque as funções no html. Isso é uma prática ruim. Tira o onkeyup do input e tenta assim: // coloque seu <echo> aqui. ac_array = new Array('Ailton José', 'José dos Reis'); window.onload = function() { document.getElementById('nomealuno').onkeyup = function(event) { var n = this; if (n.value == "") return 0; if (event.keyCode == 8 && n.backspace) { n.value = n.value.substr(0, n.value.length - 1); n.backspace = false; } var r = n.createTextRange(); tmp = n.value; if (tmp == "") return 0; for (z = 0; z < ac_array.length; z++) { tmp2 = ac_array[z]; count = 0; for (i = 0; i < tmp.length; i++) { if (tmp2.charAt(i) == tmp.charAt(i)) { count++ } } if (count == tmp.length) { diff = tmp2.length - tmp.length; if (diff <= 0) break; kap = ""; for (i = 0; i < tmp2.length; i++) { if (i >= tmp.length) kap += tmp2.charAt(i); } n.backspace = true; r.text += kap; r.findText(kap, diff * -2); r.select(); return 0; } } n.backspace = false; return 0; }; }; E outra coisa importante: Não sei quem te ensinou a usar esse createTextRange, mas ele só funciona no internet explorer.
  23. Rafael, Você só pode chamar o método DEPOIS que ele foi definido. Nos exemplos acima, você está chamando ele algumas linhas antes.
×
×
  • Create New...