【发布时间】:2016-07-02 17:32:25
【问题描述】:
我目前正在将 NodeJS 和 mySQL 用于一个项目,并且正在学习中。 我正在努力寻找答案的一件事是如何在选择下拉选项时预填充某些字段。
在我进一步解释之前,这是我目前的代码。我可能一开始就做错了。我只会输入 sn-ps 来避免问题。
例如,这是获取当前值的 GET (var db = require...):
router.get('/', function(req, res) {
db('SELECT * FROM clients', function (err, result) {
db('SELECT * FROM staff', function (err, result2) {
.......
if (!err) {
res.render('page', {
title: 'Page',
clients: result, staff: result2,...
});
}
else
console.log('Error while performing query');
我确定我做错的一件事是我用于在查询后进行查询的方法。但是,除非有人有任何建议,否则我现在会克服它,那会很棒。我最大的问题是: 目前我正在将信息输入下拉框,然后将这些信息发布在提交上,这很好。许多下拉菜单都是独立的。但是大约 2/3 的下拉列表与文本框相关,我想看看如何让它们在选择名称时自动填充。这是一些当前 HTML 的示例 //.ejs)
<div class = "col-md-2">
<select class="form-control" id="clientName" required >
<option></option>
<% clients.forEach(function (clients) { %>
<option> <%= clients.FirstName %> <%=clients.LastName %> <% }) %> </option>
</select>
</div>
.....
<div class = "col-md-2">
<label>PASS ID: </label>
</div>
<div class = "col-md-2">
<input type="text" class="form-control" name="passID" id="passID" required>
<% clients.PassID %>
</input>
</div>
我希望在选择客户姓名时,在文本框中输入他们的 ID。 (我刚刚在那里尝试了<% clients.PassID %>,但它没有用,所以我就离开了。)这很可能是我在 GET 上发送它的方式,或者我可以在前端做些什么来链接选择字段?是我在 GET 中向它发送页面上静态的信息吗?
提前感谢您的帮助
【问题讨论】:
标签: javascript html mysql node.js ejs