<script type="text/javascript">
      function closeWindow(){
           alert(1);
           tipsWindown.closeWindown.close();
      }
</script>
       <form action="friend!apply.action"  method="post" onSubmit="return closeWindow()">
        <table>
           <tr>
              <td> 向某人发送好友申请,请填写验证消息</td>
           </tr>
           <tr>
              <td>
                 <textarea id="newsfiled" name="invitefriend.newsfiled">
             </textarea> 
          </td>
           </tr>
           <tr>
              <td><input type="hidden" id="fuid" name="invitefriend.fuid" value="${(fuid)!}"/></td>
           </tr>
           <tr>
              <td><input type="hidden" id="fusername" name="invitefriend.fusername"   value="${(fusername)!}"/></td>
           </tr>
           <tr>
              <td> <input type="submit"  value="提交"/></td>
           </tr>
        </table>
       </form>上面的表单是在tipsWindows的弹出层中,本想点击提交的时候,就把所在的层关闭,但是不能实现,请高手帮忙解答,本人结贴率高,必然高分送上,谢谢!

解决方案 »

  1.   

    这个层有id么?
    有的话根据id获取到html元素修改 .style.disPlay="none"将元素隐藏掉不就行了?
      

  2.   

    document.getElementById('tipsWindown').style.display = 'none';
      

  3.   

    弹出层一般是加在body中的,通过document.body.removeChild(layer)这样就可以就可以将层关闭了,不是在body中的可从父节点移除即可,这一类的问题有两种方法:
    1.找到层所在的父节点,然后从父节点中移除。
    2.将层隐藏,layer.style.display = "none"。第一种方式操作后层对象从页面(body)中移除,会被浏览器缓存,因为他没有直接或间接添加进body中,若要将其显示出来,需要通过obj.apendChild(layer)添加进页面,且layer的display设置为‘block’(默认值)。第二种方式操作后层对象依在页面中,只是被隐藏,没有占据页面空间而已,若要将其显示出来可通过layer.style.display = 'block'。lz工具实际情况自己选择吧。