如何从选项列表中获取一项

时间:2019-07-02 06:47:36

标签: javascript node.js postgresql express

我正在尝试从ejs选项列表中从数据库中获取一项。

这里是我的代码

<form action="/chords/id" method='POST'>
    <select name="root" id="root">
        <%chords.forEach(function(chord){%>
            <option value="<%=chord.id%>"><%=chord.root%></option>
       <% }) %>
    </select>
    <select name="type" id="type">
        <%chords.forEach(function(chord){%>
            <option value=""><%=chord.type%></option>
       <% }) %>
    </select>
    <select name="extension" id="extension">
        <%chords.forEach(function(chord){%>
            <option value=""><%=chord.extension%></option>
       <% }) %>
    </select>


    <input type="submit" value='SUBMIT'>

</form>

我的数据库有4个键:根,类型,扩展名和注释。我的想法是我从选项列表中选择根,类型和扩展名,然后这应该返回和弦的音符并在页面上打印chord.note。我怎样才能做到这一点 ?我应该在路线的表单操作中传递什么?请帮助我,谢谢

2 个答案:

答案 0 :(得分:0)

我不了解ejs,但是在JavaScript中,提交事件后我们无法执行以下操作:

const select = event.target.elements['select']
const optionValue = select.options[select.selectedIndex].value

console.info('Value:', optionValue)

HTH

答案 1 :(得分:0)

您忘记在option值上设置chord.id作为扩展名和类型。

Check in the example