我正在做动态过滤,但我无法进行if条件检查。
我想在 <%if(data[i].ListNames == targetOS ){%>
中插入 targetOS var对于上述语法,它给出“targetOS 变量未定义”
请帮忙解决这个问题。
$(document).on("change",'.COTSCurrentOSClass', function(e){
var selectedOS = $(this).val();
var targetOS = "OS::From::"+selectedOS;
<%for(var i=0;i<data.length;i++){%>
<%if(data[i].ListNames == ***targetOS*** ){%>
<%for(var j=0;j<data[i].Values.length;j++){%>
console.log("options are");
console.log(data[i].Values[j]);
<%}}}%>
($(this).parent().parent()).find(".COTSTargetOSClass").append("<option>Select One</option>");
});
最佳答案
你想做的事是不可能的!
这是发生的顺序:
1 - 在服务器中,ejs 被渲染为 HTML
2 - 然后将 HTML 传输到浏览器中
3 - 浏览器读取并处理 javascript
JavaScript 的执行发生在比 ejs
执行晚得多的阶段。
关于javascript - 如何在ejs标签中插入javascript变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25972807/