iPad safari modalpopup问题

时间:2011-08-16 07:22:28

标签: javascript ipad ios4

我正在开发一个与iPad兼容的网络应用程序。

之前我在iOS 3.2版上进行了测试,所有模态对话框弹出窗口都返回了父窗口的值。但在将我的iOS升级到4.3之后,它表现得很奇怪。现在,在iPad上,它返回一个值,但在我点击另一个字段或同一字段(HTML文本字段)之前不会更新该字段。

我使用window.open();

打开模态弹出窗口

使用window.opener.oaEventiPad(retValArray)返回; oaEventiPad是负责设置更新值的功能。

有人可以帮忙吗?

谢谢,

1 个答案:

答案 0 :(得分:0)

我遇到了类似的问题。我在我的asp .net应用程序中打开一个弹出窗口,打开window.open,它应该与iPad兼容。当我使用IE,Chrome,FireFox和Safari(在带有Windows 7的PC上)时,已成功返回值。

不幸的是,当我通过iPad访问应用程序时,相同的代码在Safari中失败。在iPad上,在新窗口打开时会提示domObject,而不是在新窗口关闭时提示返回值。

以下是代码。 父窗口:

enter code here


<script type="text/javascript">

        function modalWin() {
            //alert('clicked');
            if (window.showModalDialog) {
                retVal = window.showModalDialog("About.aspx", "name", "dialogWidth:255px;dialogHeight:250px");
                alert(retVal);
            }
            else {
                retVal = window.open('About.aspx', 'name', 'height=255,width=250,toolbar=no,directories=no,status=no, menubar=no,scrollbars=no,resizable=no ,modal=yes');
                alert(retVal);
            }

        }
    </script>
//HTML
<asp:Content ID="BodyContent" runat="server" ContentPlaceHolderID="MainContent">
<a title="Test New Popup" onclick="modalWin();">New Popup for all browsers.</a>.
</asp:Content>

新页面:

     <script type="text/javascript">
        function closeIt(tempValue) {
            window.returnValue = tempValue;
            window.close();
        }
    </script>
//HTML:
 <input id="btnButton1" value="btnButton1" type="button" title="Press it to Close" onclick="closeIt('btnButton1');" />
    <br />
    <input id="btnButton2" value="btnButton2" type="button" title="Press it to Close" onclick="closeIt('btnButton2');" />
    <br />
    <input id="btnButton3" value="btnButton3" type="button" title="Press it to Close" onclick="closeIt('btnButton3');" />