我有一个Express应用程序,其路径如下:
app.get("/", function(req, res){
var choices = ["Batman", "Robin"];
res.render("home", {choices: choices});
});
以便choices
变量可供视图使用。在视图中我有类似的内容,在script
标记内:
var my_autoComplete = new autoComplete({
selector: "#search",
minChars: 1,
source: function(term, suggest){
var choices = ["Robin", "Batman"]; //I need it from the backend actually
term = term.toLowerCase();
var suggestions = [];
for (i=0;i<choices.length;i++)
if (~choices[i].toLowerCase().indexOf(term))suggestions.push(choices[i]);
suggest(suggestions);
}
});
(基本上它是我在互联网上找到的一个普通的JavaScript输入字段)。
为了使脚本起作用,我必须定义一个选择数组,并在上面的脚本中使用本地choices
变量。我希望choices
变量来自后端。
我该怎么做? 这还不是一个设计糟糕的页面吗?