zjianwlj 发表于 2012-12-28 12:18:53

webdriver 获取弹出层里面的元素

1.点击新建按钮<INPUT id=add class=inputOper7 onclick="showDialog('newPersonHealthAdd.action','新增个人基本信息档案','add')" value=新建 type=button>2.这是js代码else if(status=='add'){
                top.windowCache.parentPage=this;
                top.windowCache.winDlg=top.$.dialog({
                id:"dlg1",
                title:title,
                ok:function()
                {
                        if(!this.iwin.$("#form1" ).validate( "validate" )){
                                return false;
                        }
                        var personIdCard=this.iwin.$("#sfIdcard").val();
                        var formData=this.iwin.$("#form1").serialize();
                        $.ajax({
                                url : "http://xxxx.com:8280/AppcenterBPHSWeb/saveNewPersonHealth.action",
                                type : "POST",
                                cache : false,
                                async : false,
                                data: formData,
                                dataType : "json",
                                success : function(data) {
                                        if(data=="true"){
                                                alert("保存成功!");
                                        }else{
                                                alert("保存失败!");
                                        }
                                }
                        });
                        setParmAndSelect({"personIdCard":personIdCard});
                },
3.点击后打开一个模态对话框,但这个模态对话框是放到一个弹出的层里面的

谁能帮帮我怎么获取这个弹出框的元素????

六月天 发表于 2012-12-28 15:59:14

用switchTo()方法

zjianwlj 发表于 2012-12-28 17:42:43

回复 2# 六月天


不行,父窗口和子窗口都是只有同一个句柄

littlebig 发表于 2013-1-3 15:08:34

不知道直接用JavascriptExcutor可不可以解决,通过javascript直接操作

遇上鱼子 发表于 2013-1-23 15:39:24

其实不用的,你直在点击弹出图层前,thread.sleep 就可以,2.0已经很智能了,对于弹出页面才需要获取句柄重新定位

bob123654 发表于 2013-2-4 11:05:46

对于alert、confirm、prompt、modal dialogue类型的弹出对话框用alert 就可以了弹出窗口需要切换窗口句柄的

langhai5212 发表于 2013-4-27 16:40:53

你先看弹出层窗口是不是在frame或者iframe中,如果是switch到里面,不是直接取元素就可以
页: [1]
查看完整版本: webdriver 获取弹出层里面的元素