как создать выпадающий список фильтра на основе другого выбора - PullRequest
0 голосов
/ 09 июля 2019

Я хочу создать раскрывающийся список фильтров для другого выбора в ejs, оба раскрывающихся списка из базы данных Монго. Что мне делать? Я приостановил работу узла js

<label>Gender</label>
<select placeholder="Enter Your Gender">
  <option selected>Select Your Gender</option>
  <option>Male</option>
  <option>Female</option>
</select>
<label>Title </label>
<select name="title" placeholder="Enter Your Title">
  <%for(let t of title){%> //we can write(var ms = 0;ms< status.length; i++)instead of (let ms of maritalstatus)
  <option value="<%= t.male_english%>"><%= t.male_english%></option>
  <%}%>
</select>

app.js

app.get('/data-en', function(req, res, next) {
  let data = {} // data will send to page
  // get data from database
  db.collection('religious_category').find({}).toArray().then(religious => {
    data.religious = religious
    db.collection('list_of_marital_status').find({}).toArray().then(maritalstatus => {
      data.maritalstatus = maritalstatus

      db.collection('list_of_countries').find({}).toArray().then(countries => {
        data.countries = countries
        db.collection('honorifi_Title').find({}).toArray().then(title => {
          data.title = title

          res.render('data-en', data) // at the end
        })
      })
    })
  })
})

app.post('/data-en', (req, res, next) => {
  db.collection('newperson-en').insertOne(req.body, () => {
    res.redirect('/data-en')
  })
})

У меня есть в базе данных список данных для мужчин и женщин я хочу, чтобы при нажатии на пол в мужском списке названий появлялись мужские титулы и вице

1 Ответ

0 голосов
/ 09 июля 2019

Вы передаете объект с именем data в шаблон и пытаетесь получить доступ к объекту с именем title.

Вы должны передать свойства вашего объекта непосредственно в ваш шаблон:

res.render('data-en', {
        title: data.title,
        religious: data.religious,
        maritalstatus: data.maritalstatus,
        countries: data.countries
    });
...