javascript - 对 js if 语句使用 ejs 输入
问题描述
我有一个需要为课程做的代码问题。我有一个有用户的数据库,另一个表有用户可以访问的标题。我正在尝试创建一个页面,他们可以在其中编辑用户,当他们单击按钮时,表单会自动填充 id、名字和姓氏。
现在我正在尝试显示用户选择的访问权限目前可以访问。而我认为只是一个简单的 if 语句变得令人头疼,似乎我无法访问要插入的 html 代码中的 id 变量,当我尝试将 if 语句放在外面时,它说错误使用 http 标头,就像它发送太多渲染一样。我怎样才能做到这一点?
所以这里的代码有效,但它加载了所有用户的标签,但我想根据 id 过滤结果。
<tbody>
<% all_users_to_modify.forEach(function(row){ %>
<tr>
<td>
<button class="btn btn-primary m-b-0"
onClick="fillForm('<%= row.id %>','<%= row.f_name %>','<%= row.l_name %>');";
onclick="moneyCalc('<%= row.id %>')" >
<%= row.id %>
</button>
</td>
<td><%= row.f_name %></td>
<td><%= row.l_name %></td>
<td><%= row.email %></td>
<td><%= row.phone_number %></td>
</tr>
<% }); %>
</tbody>
<table class="table table-striped table-bordered nowrap">
<thead>
<tr>
<th>Acceso</th>
</tr>
</thead>
<tbody id="lastResult">
</tbody>
</table>
function moneyCalc(id) {
'use strict';
var id = document.getElementById('id').value;
if (id) {
var html_to_insert = `
<% list_of_all_users_tabs.forEach(function(row1){ %>
<tr>
<td><%= row1.tab_name %> </td>
</tr>
<% }); %>
`;
lastResult.innerHTML += html_to_insert;
}
}
现在这就是我想做的,在 list_of_all_users_tabs 的每一行中,它都有一个列是 user_id,另一列是 tab_name。所以我有两个想法,但似乎都没有。
第一个想法是放置一个while循环来比较数据库中的user_id和输入id但是我得到:错误[ERR_HTTP_HEADERS_SENT]:
function moneyCalc(id) {
'use strict';
var id = document.getElementById('id').value;
if (id) {
while(list_of_all_users_tabs.user_id == id) {
var html_to_insert = `
<% list_of_all_users_tabs.forEach(function(row1){ %>
<tr>
<td><%= row1.tab_name %> </td>
</tr>
<% }); %>
`;
lastResult.innerHTML += html_to_insert;
}
}
}
第二个想法在 html 代码中有一个 if 语句,但是它说 id not defined:
function moneyCalc(id) {
'use strict';
var id = document.getElementById('id').value;
if (id) {
var html_to_insert = `
<% list_of_all_users_tabs.forEach(function(row1){ %>
<% if(row1.id == id) { %>
<tr>
<td><%= row1.tab_name %> </td>
</tr>
<% } %>
<% }); %>
`;
lastResult.innerHTML += html_to_insert;
}
}
解决方案
将您的 javascript 代码包装到<script>
标签中。
<script>
//Your code goes here
</script>
推荐阅读
- html - 删除 wordpress 网站链接上的下划线。文字装饰:无;不工作
- spring-integration - Spring Cloud Dataflow Sink App 中的 AvroSchema 消息转换
- android - Android Dagger2 共享管理器类
- ios - 如果条件问题迅速
- javascript - js中的二维码生成器
- javascript - 带有 addEventListener('keyup',)) 的 JavaScript 不能在 Web 上工作,但在 jsfiddle 上工作,请协助
- google-maps - Flutter map_view不显示标记
- android - 随机设备中的 Google AdMob 错误代码 (1)
- hyperledger-fabric - 调用 channel.sendTransactionProposal() 时出现 Hyperledger Fabric 节点dk 错误
- makefile - 如何动态生成 Makefile 目标