Node.js 从输入字段(NodeJS/Mssql/EJS)获取数据

Node.js 从输入字段(NodeJS/Mssql/EJS)获取数据,node.js,sql-server,ejs,Node.js,Sql Server,Ejs,我是一个新手,陷入了我的问题。我不知道如何根据select字段中选择的服务从SQL获取价格,以及如何从输入字段获取数量。请帮助我。非常感谢 EJS: <div class="vbooking__step" id="step-2"> <div class="col-md-12"> <div class="form-group">

我是一个新手,陷入了我的问题。我不知道如何根据select字段中选择的服务从SQL获取价格,以及如何从输入字段获取数量。请帮助我。非常感谢

EJS:

<div class="vbooking__step" id="step-2">
        <div class="col-md-12">
            <div class="form-group">
                <div class="row">
                    <div class="col-md-9">
                        <label>Select Service</label>
                        <select name="service" class="form-control" id="service__select" onchange="resetNumber()">
                            <% allsv.map(e=>{ %>
                                <option value="<%= e.S_Id %>" class="service_name"> <%= e.SName %> </option>
                            <% }); %>
                        </select>
                    </div>
                    <div class="col-md-3 step-2-nice-number">
                        <label>How many persons?</label>
                        //---Get quantity from Here-----------------------------
                        <input type="number" class="form-control" min="0" id="qty__persons"> 
                    </div>
                </div>
            </div>
<div class="cart-items">
</div>
var selectList = [];
function addToCart(){
    let title = $('#service__select option:selected').text();
    // I don't know get price and quantity from SQL and quantity input
    addService(title, price, quantity);
}

function  addService(title, price,quantity){
    selectList.push(title, price, quantity);
    var cartRow = document.createElement('div')
    cartRow.classList.add('cart-row')
    cartRow.classList.add('row')
    var cartItem = document.getElementsByClassName('cart-items')[0]
    var cartRowContent = `
        <div class="col-11">
            <h3 class="service__title" name="serviceTitle">${title}</h3>
            <p><span class="display__number" name="quantity">${quantity}</span><span> x ${price}</span></p>
            <p><b class="display__total"  name="thanhtien"></b></p>
        </div>
        <div class="col-1">
            <a class="btn__remove" onclick="removeItem()"><i class="fas fa-times fa-lg" style="color: var(--main-color)"></i></i> </a>
        </div>`
    cartRow.innerHTML = cartRowContent

    cartItem.append(cartRow);
}
  
// ------------Install Express----------------
const express = require("express");
const app = express();

//------------Port------------------
const port = process.env.PORT || 3000;
app.listen(port,()=>console.log(`Server: http://localhost:${port}`));

//------------View Engine EJS-----------------
app.set("view engine","ejs");

//------------Set Up static folder------------
app.use(express.static("public"));



// Install MSSQL
const mssql = require("mssql");
const config = {
    server:'101.99.13.2',
    database:'test',
    user:'sa',
    password:'1',
    options: {
        encrypt: false,
    }
}
mssql.connect(config,function (err) {
    if (err) console.log(err);
    else console.log("connect DB");
});

var db = new mssql.Request();

const bodyParser = require("body-parser");
app.use(bodyParser.urlencoded({extended:true}));
app.get('/booking/:serviceID', async (req,res)=>{
    let sID = req.params.serviceID;
    let sql_text3 = "EXEC v_services @ID = "+sID;
    await db.query(sql_text3).then(rs=>{
        allsv = rs;
    }).catch(function (err){
        console.log(err);
    })
    await res.render("book", {
        allsv: allsv.recordset,
    });
})