我有一个变量,它被赋予一个值,该值取决于db中表中的值。如何使用此变量指定某些事件侦听器是否处于活动状态并指定是否显示特定链接。
例如我尝试但没有成功地工作:
var accessLevel = 0;
var userLoggedIn = "<?php Print($userLoggedIn); ?>";
var userlevel = "<?php Print($userLevel); ?>";
function map_initialize()
{
////CONCERNING THIS PART#########///
if (accessLevel >= 2){ //WHEN LOADED THIS IS NOT REGISTERING ANY RIGHT CLICK EVEN WHEN accessLevel is over 2!
google.maps.event.addListener(map, 'rightclick', function(event) {
//Some function that I don't want to run if accessLevel is <2
});
}
}
////THIS WORKS FINE BELOW JUST PROVIDING IT
if (userLoggedIn == true) {
if (userlevel == "0") {
accessLevel = 0;
console.log(accessLevel);
}
else if (userlevel == "1") {
accessLevel = 1;
console.log(accessLevel);
}
else if (userlevel == "2"){
accessLevel = 2;
console.log(accessLevel);
}
else if (userlevel == "3"){
accessLevel = 3;
console.log(accessLevel);
}
else if (userlevel == "4"){
accessLevel = 4;
console.log(accessLevel);
}
}
我不知道这是否有意义,但基本上我希望能够过滤某些可用的功能,具体取决于accessLevel
的值。这是否可行(特别是与谷歌地图元素一起使用),我该怎么做。
答案 0 :(得分:1)
您应该在示例代码的第13行中将)};
更改为});
。
同时将userLoggedIn == true
更改为:
userLoggedIn.toLowerCase().trim() === "true"
假设$userLevel
的可能值为TRUE
,FALSE
,true
,false
。
答案 1 :(得分:0)
解决了它,我所要做的只是交换if statement
的位置,以便它在click事件监听器中。所以。
function map_initialize()
{
google.maps.event.addListener(map, 'rightclick', function(event) {
if (accessLevel >= 2){
//Some function that I don't want to run if accessLevel is <2
}
});
}