如何在javascript中生成IF?

时间:2012-09-22 05:05:12

标签: javascript

我试图阻止我网站上的某些国家/地区。

此脚本只会加载我在美国,加拿大(加拿大)和英国(英国)的网站,如果您在其他国家/地区访问,则会显示警告。

<script language="JavaScript">
var geo = disp();
if (geo[0] != 'US' && geo[0] != 'CA' && geo[0] != 'GB'){
   alert('Sorry this site is only accessible from the USA, Canada 
          and Great Britain');
   window.location = ('http://www.yahoo.com');
}
</script>

但我想在特定国家/地区显示警报。

IF的反义词是什么??

或者我怎样才能使声明变错..?

6 个答案:

答案 0 :(得分:6)

在Javascript中屏蔽网站?

你是否意识到这是多么无用,你只能使用IP或其他任何东西阻止后端。 但客户端这是没用的。访客只需要禁用JS和tada!你的网站上有。

所以你可以使用geoip的数据库在你的后端使用一个库来阻止你的ips。

以下是使用iptables进行此操作的一种方法 在这里直接进入Apache

通过IP阻止并不完美,但这一点就可以了。

答案 1 :(得分:1)

只需使用“else”:

<script language="JavaScript">
var geo = disp();
if (geo[0] != 'US' && geo[0] != 'CA' && geo[0] != 'GB'){
   alert('Sorry this site is only accessible from the USA, Canada and Great Britain');
   window.location = ('http://www.yahoo.com');
} else {
   // some other stuff
}
</script>

答案 2 :(得分:1)

if(){
   // if the condition in if is true  
}else{
  // if the condition of if false
}

或使用!(NOT)运算符

if(!condition){
   // if the condition in if is false
 }

并且用JavaScript阻止其他网站并不是一个更糟糕的选择。它应该在服务器端完成

答案 3 :(得分:0)

if的'反面'是其他。

 if(condition) {
   [This gets executed if condition is true]
}
else {   //or if(!condition)
   [This gets executed if condition is false]
}

在发布此类问题之前,您需要查看一些基本的javascript教程。

答案 4 :(得分:0)

  

我试图阻止我网站中的某个国家/地区

if (geo[0] == 'The country') {
    alert('Not allowed');
    window.location = 'http://google.com/';
}

如果您只想阻止一个国家​​/地区,则不需要其他内容。

答案 5 :(得分:0)

如果在浏览器上禁用了客户端脚本,那么您的代码根本无法工作......所以很可能您必须更改逻辑或策略..

您可以做的是:

您可以通过IP Addresses检查该内容。