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

求解:javascript导致页面跳出iframe
现页面在iframe中打开,通过以下javascript取复选框checked值传递到另一ASP页面完成删除操作:
function   del(){
  var   flag=true;
  var   temp= " ";
  var   tmp;
  if((document.form1.answer.length+ " ")== "undefined ")   {
                tmp=1
                }
                else{
                    tmp=document.form1.answer.length
                }
  if   (tmp==1)   {
       if   (document.form1.answer.checked)   {
               flag=false;
               temp=document.form1.answer.value
           }
  }
        else   {  
       for   (i=0;i <document.form1.answer.length;i++)   {
           if   (document.form1.answer[i].checked)
                  {
                 if   (temp== " ")   {
                       flag=false;
                       temp=document.form1.answer[i].value
                   }
                        else   {
                     flag=false;
                     temp   =   temp   + ", "+   document.form1.answer[i].value
                     }
               }
         }
  }
  if   (flag){  
    alert( "对不起,你还没有选择! ");
}
  else   {  
                name=document.form1.name.value
         if   (confirm( "确实要删除? "))   {
           window.location= "xwjl_del.asp?id= "   +   temp;
       }
  }
  return   !flag;
}  
</script>

===============================================

操作成功后导致在主界面打开连接都跳出iframe.
求该问题解决方法.

先谢谢了~

------解决方案--------------------
self.location
------解决方案--------------------
1.在form1加上target= "_self "试试;
2.
在第一个页面插 <iframe frameborder= "0 " width= "0 " height= "0 " scrolling= "no " src= "about:blank " id= "userdelimg " name= "userdelimg "> </iframe> 然后在form1加上target= "userdelimg ";
3.暂时和第二一样@)
------解决方案--------------------

location= "xwjl_del.asp?id= " + temp;
selft.location= "xwjl_del.asp?id= " + temp;
都可以

但请先检查xwjl_del.asp页面中没有跳出frame的操作
有时候,错误表现的地方并不一定是错误产生的地方