您好,我想在ejs中应用条件语句,但在我的代码中不起作用“我希望当我选择一个特定值(不使用运输方式)时,buton显示否则不显示,而仅显示-(其他条件)在开发人员工具中的“从下拉列表中进行的每个选择”中,都显示了条件语句代码https://ibb.co/60ZWcXh,该条件语句代码没有使用
条件语句
<%if (locals.students == "noTransportation") { %>
<button type="button" class="btn btn-primary pull-right" onclick="" id="">
Migrate to Applicants
</button>
<%} else { %>
-
<% } %>
完整的students_list.ejs
<select class="form-control changeDropDown" id="transportation">
<option value="applications">Applications</option>
<option value="transportation">Using Transportation</option>
<option value="noTransportation">Not Using Transportation</option>
<option value="All">All</option>
</select>
<%if (locals.students == "noTransportation") { %>
<button type="button" class="btn btn-primary pull-right" onclick="" id="">
Migrate to Applicants
</button>
<%} else { %>
-
<% } %>
控制器:
in controller the code in comments ////data migration code//// is for this conditional statement but its not working
paste.ofcode.org/RGu9t7Fm3uNPNKiczNP2p9
我该如何解决这个问题
答案 0 :(得分:0)
如果将console.log(locals.students)
放在if
条件的正上方,您将在node
的终端中看到locals.students
的值不同于noTransportation
。像这样添加它:
<select class="form-control changeDropDown" id="transportation">
<option value="applications">Applications</option>
<option value="transportation">Using Transportation</option>
<option value="noTransportation">Not Using Transportation</option>
<option value="All">All</option>
</select>
<% console.log("====================", locals.students) %>
<%if (locals.students == "noTransportation") { %>
<button type="button" class="btn btn-primary pull-right" onclick="" id="">
Migrate to Applicants
</button>
<%} else { %>
-
<% } %>
如果您想让if
正常工作,可以暂时 代替console.log(....)
:
<% locals.students = "noTransportation" %>
更新:
对于您当前拥有的堆栈溢出问题,没有快速简便的解决方案可以解决。
一些想法供您遵循:
<% .. %>
中的代码在服务器上执行。 $("#transportation")
发生更改时隐藏/显示按钮-但这仅会节省一无所有在您的数据库中$("#transportation")
更改时重新绘制整个页面,以便可以执行ejs
。