<td>
<input type="hidden" name="netcellname" value="NJBSC3" />
NJBSC3
</td>
<td title="" style="CURSOR: hand">

            <input type="hidden" name="sysver" value=""/>
            
            </td>
<td 
<input type="hidden" name="busver" value="xxxdd" /> 
xxxdd
</td>
<td>
<input type="hidden" name="patch" value="" />

</td>

</tr>
</tbody>
</table>
<br>
<div align="right">
<input type="button" value="确定" onclick="getReturn()" class="btn">
<!--<input type="button" value="全选" onclick="selectAll()">-->
<!--<input type="button" value="反选" onclick="deselect()" >-->
<input type="button" value="关闭" onclick="getClose()" class="btn">
</div>
</form></body>
<script language="javascript">
//shit jsjsjsjsjsjs
var return1="";
var return2="";
var return3="";
//关闭按钮
function getClose() {
window.returnValue="";
window.close();
}
function checkRtn() {
if( window.returnValue ==null ) {
window.returnValue="";
}
//alert(window.returnValue=="");
}
//组装返回数据
function getReturn() {

    var checkboxid = document.getElementsByName("checkboxid");
    for(var i =0 ;i<checkboxid.length;i++){
     
    //alert(checkboxid[i].parentElement);
     if(checkboxid[i].checked){
     // alert(checkboxid[i].parentElement.children[1].value);
     return1+=checkboxid[i].parentElement.children["f"].value+";";
         return2+=checkboxid[i].parentElement.children["s"].value+";";
         return3+=checkboxid[i].parentElement.children["t"].value+";";
     }
    }
    /*
    alert("kkkkkkkkk");
var elem = document.getElementById("myTBody");
    for (var i = 0;i<elem.rows.length;i++) {
        if (elem.rows[i].cells[0].firstChild.checked) {
         return1+=elem.rows[i].cells[0].children["f"].value+";";
         return2+=elem.rows[i].cells[0].children["s"].value+";";
        }
    }
    */
    
if(return1.lastIndexOf(";")!=-1) {
return1=return1.substring(0,return1.lastIndexOf(";"));
return2=return2.substring(0,return2.lastIndexOf(";"));
}


if(return1=="")
     window.returnValue="";
    else
     window.returnValue=return1+"#"+return2+"#"+return3;
    //alert("["+return1+"]");
    //alert(return1=="");
//alert(return1+"#"+return2);
    window.close();
}
//筛选类型确定筛选内容
function setFilter(chooser) {
if(chooser.selectedIndex==0)
return;
var fname=chooser.form.elements["filterName"];
fname.options.length = 0;
fname.options[0]=new Option("请选择筛选内容","-1",true,false);
var choice = chooser.options[chooser.selectedIndex].value;
for(var i=0;i<filterArray[choice].length;i++) {
fname.options[i+1]=new Option(filterArray[choice][i],filterArray[choice][i]);
}
}
//筛选动作按钮
/*
function filter(button) {
var filterTypeSelect=button.form.elements["filterType"];
var filterNameSelect=button.form.elements["filterName"];
var filterTypeIdx=filterTypeSelect.options[filterTypeSelect.selectedIndex].value;
var filterName=filterNameSelect.options[filterNameSelect.selectedIndex].value;
//alert("{"+filterTypeIdx+"|"+filterName+"}");
var elem = document.getElementById("myTBody");
    for (var i = 0;i<elem.rows.length;i++) {
     //alert("["+elem.rows[i].cells[filterTypeIdx+1].firstChild.value+"]");
        if (elem.rows[i].cells[parseInt(filterTypeIdx,10)+1].firstChild.value==filterName) {
         elem.rows[i].style.display="block";
        }
        else {
         elem.rows[i].style.display="none";
        }
    }
    
}
*/function cancleFilter() {
var elem = document.getElementById("myTBody");
    for (var i = 0;i<elem.rows.length;i++) {
     elem.rows[i].style.display="block";
    }}
function chkbox2(flag) {
var elem = document.getElementById("myTBody");
    for (var i = 0;i<elem.rows.length;i++) {
     elem.rows[i].cells[0].firstChild.checked=flag;
    }
}
//queryfunction doQuery() {
var region=document.getElementById('region').value;
var queryType=document.getElementById('queryType').value;
var queryText=document.getElementById('queryText').value;

alert(region+"|"+queryText);
if(region==""&&queryType=="-1") {
    cancleFilter();
    return;
}
var regRegion=new RegExp(region,'gim');
var regText=new RegExp(queryText,'gim');
var elem = document.getElementById("myTBody");
    for (var i = 0;i<elem.rows.length;i++) {
        if(region!="") {
            if(!regRegion.test(""+elem.rows[i].cells[1].firstChild.value)) {
                alert("region not match");
                elem.rows[i].style.display="none";
            }
        }
        if(queryType!="-1") {
            if( regText.test(elem.rows[i].cells[parseInt(queryType,10)].firstChild.value)==false) {
             alert( regText.test(elem.rows[i].cells[parseInt(queryType,10)].firstChild.value) );
                elem.rows[i].style.display="none";
            }
        }
    }
}function doReset() {
    document.getElementById("region").value="";
document.getElementById("queryType").value=-1;
document.getElementById("queryText").value="";
cancleFilter();

}
function queryOther() {
    
}
</script></html>

解决方案 »

  1.   

    同志们把html拼起来,然后运行一下就知道了,快郁闷死我了
      

  2.   

    简单的说是什么问题?你不能提炼一下?
    用1,2句代码提炼下?
    如 如  var a=1,b=2  
    if(a==b){ //这里判断竟然通过
    }
      

  3.   

    if(queryType!="-1")   { 
                            if(   regText.test(elem.rows[i].cells[parseInt(queryType,10)].firstChild.value) )   { 
                            alert(   regText.test(elem.rows[i].cells[parseInt(queryType,10)].firstChild.value)   ); 
                                    elem.rows[i].style.display="none"; 
                            } 
                    } 
    主要是这个函数,alert会alert一个false,但是if里边和alert是一样的,为什么会执行呢,如果执行alert应该会alert一个true啊
      

  4.   

    http://topic.csdn.net/u/20070327/15/d4b4197d-35b9-452d-adb2-abeedf859b5a.html看看这个的第3个问题 ,8楼有详细回答
      

  5.   

    我看你写的好像是这样的。当然会alert false
                   <script>
    var ssss=false;
    if(ssss==false){
    alert(ssss)
    }
    </script>
      

  6.   

    if(queryType!="-1")       {  
                                                    if(       /123/.test(elem.rows[i].cells[parseInt(queryType,10)].firstChild.value)   )       {  
                                                    alert(       /123/.test(elem.rows[i].cells[parseInt(queryType,10)].firstChild.value)       );  
                                                                    elem.rows[i].style.display="none";  
                                                    }  
                                    }   把这里都直接改成用/123/的形式
      

  7.   

    RegExp 全局对象有一些静态属性和方法,比如 RegExp.$1... RegExp$9, 等解决这个问题的办法也很简单,就是每次重新初始化一次正则表达式对象:你把你的对象初始化 var   regText=new   RegExp(queryText,'gim');放到
    if(queryType!="-1")   {
    var   regText=new   RegExp(queryText,'gim');
                            if(   regText.test(elem.rows[i].cells[parseInt(queryType,10)].firstChild.value)==false)   {
                            alert(   regText.test(elem.rows[i].cells[parseInt(queryType,10)].firstChild.value)   );
                                    elem.rows[i].style.display="none";
                            }
                    } 即每一次查询的时候都初始化一次就可以了
      

  8.   

    我把LZ的代码贴过来试了下,用我上面的方法可以解决,LZ可以试一下
      

  9.   

    谢谢大家了,已经知道怎么回事了,原来是全局属性的问题,文档已经说明,只是没有好好看..........index 属性
    返回字符位置,它是查找字符串中第一个成功匹配的开始位置。只读。RegExp.index 该属性的相关对象总是全局 RegExp 对象。说明
    index 属性是基于零的。其初始值为 -1,不论何时产生一个成功匹配,它的值都将改变。 示例
    下例阐明了 index 属性的用法。该函数重复了字符串查找,并将字符串中每一个字的 index 和 lastIndex 值都打印出来。function RegExpTest(){
      var ver = Number(ScriptEngineMajorVersion() + "." + ScriptEngineMinorVersion())
      if (ver >= 5.5){
        var src = "The rain in Spain falls mainly in the plain.";
        var re = /\w+/g;
        var arr;
        while ((arr = re.exec(src)) != null)
           print(arr.index + "-" + arr.lastIndex + "\t" + arr);
      }
      else{
        alert("You need a newer version of JScript for this to work");
      }
    }
    只要reg.test后重置一下lastIndex或者不要g选项就可以了,谢谢大家了,唉~~~差点被搞死