我正在创建一个网页,老师可以为学生创建测试。此.js文件从服务器收集所有测试并将其显示在导航栏中。所有测试都存储为JSON数据。我使用的是通用HTML地址:“dotest.html”。问题是我没有工作验证来进行某项测试。让我们说其中一个测试的名称是“Java”。是否可以创建一个函数,该函数只链接到这个特定的测试,它的变量名称与导航栏中显示的“item.testname”(Java)相同?
$(function() {
$.getJSON('http://127.0.0.1:8000/getTest/', showTodo);
function showTodo(data) {
$.each(data, function(key, item) {
$(".studentlink").append('<li><a href="http://127.0.0.1:8000/dotest.html">' + item.testName + '</a></li>');
});
}
});
答案 0 :(得分:0)
我无法确定我完全理解您要查找的内容,但如果您想通过在白名单中查看链接来限制导航栏中的链接选择,那么以下内容可能会有所帮助:
function showTodo(data) {
var valid={'java':1,'php':1,'c++':1}; // object contains the "allowed" entries
$.each(data, function(key, item) {
if (item.testName.toLowerCase() in valid)
$(".studentlink").append('<li><a href="http://127.0.0.1:8000/dotest.html">' + item.testName + '</a></li>');
});
}
valid
是一个充当白名单的对象:item.testName
只有当它也是此对象中的键时才会显示为链接。