日期:2014-05-17  浏览次数:20386 次

asp.net中js的if语句
function test()
  {
  var i="<%= Session[ "pruview"] %>";
   
  if(i!="0004" || i!="0005")
  setTimeout("lostblur()",300);
  }
  //失去焦点
  function lostblur()
  {
  document.getElementById("txtCardID").blur();
  }
  function getblur()
   
  {  
  document.getElementById("txtCardID").value="";
  }
这段代码为什么if语句我写一个条件if(i!="0004") 可以调用生效,为什么写成 if(i!="0004" || i!="0005")这段js代码就不生效了呢,我把if里面的或者写成"or"也不行,大侠们帮忙看一下是什么原因。


------解决方案--------------------
你的语法是没有写错的
if(i!="0004" || i!="0005") 能说说你这句话的意思不



也许你要的条件是 应该吧 || 改成 &&
------解决方案--------------------
探讨

是逻辑问题为什么用&amp;&amp;可以呢,一个登陆页面判断权限的时候可以用最大的权限时输入用户名,不输入密码就可以登录吗

------解决方案--------------------
if(i!="0004" || i!="0005") 
这句本身就是错的,不管你的逻辑是怎样,这句都不对。你用的是“!=”,就不能再与“||”一起使用了,这样你的条件等于没有,即使你的权限是0004或者0005也都可以调用的。
你要达到你的要求,很明显应该用 if(i!="0004" && i!="0005") 

------解决方案--------------------
if(i!="0004" || i!="0005")应该改成if(i!="0004" && i!="0005")