我正在尝试从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。我怎样才能做到这一点 ?我应该在路线的表单操作中传递什么?请帮助我,谢谢
答案 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作为扩展名和类型。