2016-12-12 2 views
0

Я не могу найти решение для передачи данных результата в базу данных. Какую библиотеку nodeJS следует использовать или каким образом я должен использовать эту работу? Заранее спасибо за вашу помощь.Использование ajax с nodeJs

<form action="/scheda-ascolti/save" method="post" class="form-horizontal" id="schedaAscolti"> 
    <div class="box-body"> 
     <div class="col-sm-9"> 
      <div class="form-group"> 
       <label for="tipologia-attivita" class="col-sm-3">Tipologia Attivita' di Controllo</label> 
       <div class="col-sm-9"> 
        <select id="tipologia" name="tipologiaControllo" class="form-control" required> 
         <option disabled selected value style="display: none"></option> 
         <option value="ascolto">Ascolto</option> 
         <option value="misteryCall">Mistery Call</option> 
        </select> 
       </div> 
      </div> 
      <div class="form-group"> 
       <label for="inputPassword3" class="col-sm-3">Operatore Telefonico Valutato</label> 

       <div class="col-sm-9"> 
        <input type="text" name="operatore" class="form-control" id="codiceOperatore" value="TS" minlength="5" required> 
       </div> 
      </div> 
      <div class="form-group"> 
       <label for="apertura-chiamata" class="col-sm-3">Apertura </br> Chiamata</label> 
       <div class="col-sm-9"> 
        <input type="hidden" name="aperturaChiamata" class="apertura-chiamata"/> 
       </div> 
      </div> 
      <div class="form-group"> 
       <label for="identificazione-problema" class="col-sm-3">Identificazione del problema</label> 
       <div class="col-sm-9"> 
        <input type="hidden" name="identificazioneProblema" class="identificazione-problema"/> 
       </div> 
      </div> 
      <div class="form-group"> 
       <label for="formula-soluzione" class="col-sm-3">Individuazione e Formulazione</label> 
       <div class="col-sm-9"> 
        <input type="hidden" name="formulaSoluzione" class="formula-soluzione"/> 
       </div> 
      </div> 
      <div class="form-group"> 
       <label for="riepilogo-chiamata" class="col-sm-3">Riepilogo, conferma e chiusura della chiamata</label> 
       <div class="col-sm-9"> 
        <input type="hidden" name="riepilogoChiamata" class="riepilogo-chiamata"/> 
       </div> 
      </div> 
      <div class="form-group"> 
       <label for="caratteristiche" class="col-sm-3" data-toggle="tooltip" data-placement="top" title="Linguaggio, empatia, ascolto, impegno, TMC">Caratteristiche e </br> Capacita'</label> 
       <div class="col-sm-9"> 
        <input type="hidden" name="caratteristicheCapacita'" class="caratteristiche"/> 
       </div> 
      </div> 
      <div class="form-group"> 
       <label for="propone-csi" class="col-sm-3" data-toggle="tooltip" data-placement="top" title="1=SI; 0=NO">Propone </br> CSI</label> 
       <div class="col-sm-9"> 
        <input type="hidden" name="proponeCSI" class="propone-csi"/> 
       </div> 
      </div> 
      <div class="form-group"> 
       <label for="apertura-ticket" class="col-sm-3" data-toggle="tooltip" data-placement="top" title="Se necessario (1=SI; 0=NO)">Apertura </br> Ticket</label> 
       <div class="col-sm-9"> 
        <select onchange="count();" name="aperturaTicket" class="form-control non-neccesario" required> 
         <!--<option disabled selected value style="display: none"></option>--> 
         <option value="0">Non Neccesario</option> 
         <option value="0">0</option> 
         <option value="1">1</option> 
        </select> 
       </div> 
      </div> 
      <div class="form-group"> 
       <label for="aggiornamento-ticket" class="col-sm-3" data-toggle="tooltip" data-placement="top" title="1=SI; 0=NO">Aggiornamento Ticket di Chiamata</label> 
       <div class="col-sm-9"> 
        <select onchange="count();" name="aggiornamentoTicket" class="form-control aggiornamento-ticket" required> 
         <!--<option disabled selected value style="display: none"></option>--> 
         <option value="0">No DataMax</option> 
         <option value="0">0</option> 
         <option value="1">1</option> 
        </select> 
       </div> 
      </div> 
      <div class="form-group"> 
       <label for="critica-comportamentale"class="col-sm-3">Criticità </br> comportamentale</label> 
       <div class="col-sm-9"> 
        <select name="criticaComportamentale" class="form-control critica-comportamentale" required> 
         <option disabled selected value style="display: none"></option> 
         <option value="0">No</option> 
         <option value="1">Si</option> 
        </select> 
       </div> 
      </div> 
      <div class="form-group"> 
       <label for="note-commenti" class="col-sm-3">Note e </br> Commenti</label> 
       <div class="col-sm-9"> 
        <textarea name="noteCommenti" class="note-commenti"></textarea> 
       </div> 
      </div> 
      <div class="form-group"> 
       <label for="inviata-segnalazione" class="col-sm-3" data-toggle="tooltip" data-placement="top" title="es. email, skype, ...">Inviata </br> Segnalazione</label> 
       <div class="col-sm-9"> 
        <select name="inviataSegnalazione" class="form-control" required> 
         <option disabled selected value style="display: none"></option> 
         <option value="0">No</option> 
         <option value="1">Si</option> 
        </select> 
       </div> 
      </div> 
     </div> 
     <div class="col-sm-3"> 
      <div class="form-group boxed-rating"> 
       <label for="valutazione-finale" class="col-sm-12 valutazione-testo" data-toggle="tooltip" data-placement="top" title="da 0 a 100">Valutazione Finale</label> 
       <div id="result" class="box-rating valutazione-finale"></div> 
      </div> 
     </div> 
    </div> 
    <!-- /.box-body --> 
    <div class="box-footer"> 
     <button type="submit" class="btn btn-info pull-right">Salva</button> 
    </div> 
    <!-- /.box-footer --> 
</form> 
var data = {    
    'aperturaChiamata': parseInt($('input[name=aperturaChiamata]').val()), 
    'identificazioneProblema': parseInt($('input[name=aperturaChiamata]').val()),     
    'riepilogoChiamata': parseInt($('input[name=riepilogoChiamata]').val()),     
    'caratteristiche': parseInt($('input[name=caratteristiche]').val()),     
    'formulaSoluzione': parseInt($('input[name=formulaSoluzione]').val()),   
    'proponeCsi': parseInt($('input[name=proponeCsi]').val()),     
    'aperturaTicket': parseInt($('input[name=aperturaTicket]').val()),     
    'aggiornamentoTicket': parseInt($('input[name=aggiornamentoTicket]').val()),     
    'valutazioneFinale': $('#result').text(result) 
}; 

$("schedaAscolti").submit(function (e) { 
    $.ajax({ 
     require: { 
      type: "POST", 
      url: "/scheda-ascolti/save", 
      data: data 
     }, 
     success: function(data) { 
      alert('ok'); 
     } 
    }); 
    e.preventDefault(); 
}); 

стороне сервера

router.post('/scheda-ascolti/save', function (req, res, next) { 
    var tipologiaControllo = req.body.tipologiaControllo; 
    var operatore = req.body.operatore; 
    var aperturaChiamata = req.body.aperturaChiamata; 
    var identificazioneProblema = req.body.identificazioneProblema; 
    var formulaSoluzione = req.body.formulaSoluzione; 
    var riepilogoChiamata = req.body.riepilogoChiamata; 
    var caratteristicheCapacita = req.body.caratteristicheCapacita; 
    var proponeCSI = req.body.proponeCSI; 
    var aperturaTicket = req.body.aperturaTicket; 
    var aggiornamentoTicket = req.body.aggiornamentoTicket; 
    var criticaComportamentale = req.body.criticaComportamentale; 
    var noteCommenti = req.body.noteCommenti; 
    var inviataSegnalazione = req.body.inviataSegnalazione; 

    res.redirect('/scheda-ascolti'); 
    console.log(req.body); 
});  
+0

Не рекомендуется устанавливать это в объект данных: ''valutazioneFinale': $ ('# result'). Text (result)'. – Jai

+0

Так как я могу это сделать @Rory –

+0

@ArditKurti не уверен, почему вы спрашиваете меня, у меня нет опыта работы с Node. –

ответ

0

'/ Scheda-ascolti' конечная точка GET или POST?

+0

Thnx в любом случае мне удалось решить его самостоятельно @Omer –

Смежные вопросы