2012-07-20 59 views
2

我必须打开窗口上点击按钮作为使用JavaScript的模式对话框。 我已经使用window.open,但它显示了两个实例的父页面以及弹出页面。 当弹出页面打开时,不允许点击父页面。打开窗口上点击按钮作为使用javascript的模态对话框

function openWindow() 
      { 
       var colno, pid; 
       var w = 950; 
       var h = 350; 
       var t = 0; 
       var l = 0; 
       var scrollbars = 1; 
       var modal = 'yes'; 

       var reportWindow = ""; 
       reportWindow = window.open("Search.aspx" + '', '', "width=" + w + ",height=" + h + ",left=" + l + ",top=" + t + ',scrollbars=' + scrollbars + 'modal' + modal); 
       reportWindow.focus(); 
       return false; 
      } 
+0

看到这可能是有帮助的您http://okonet.ru/projects/modalbox/index.html – 2012-07-20 07:32:49

回答

5

您的代码行,

reportWindow = window.open("Search.aspx" + '', '', "width=" + w + ",height=" + h + ",left=" + l + ",top=" + t + ',scrollbars=' + scrollbars + 'modal' + modal); 

丢失后的模态的 '=' 符号。它应该是,

reportWindow = window.open("Search.aspx" + '', '', "width=" + w + ",height=" + h + ",left=" + l + ",top=" + t + ',scrollbars=' + scrollbars + 'modal=' + modal); 

要打开窗口,对话框,

<html> 
    <body> 
    <script language="JavaScript"> 
    function openWindow() { 
     if (window.showModalDialog) { 
window.showModalDialog("http://domain.com","name", 
"dialogWidth:255px;dialogHeight:250px"); 
} else { 
window.open('http://domain.com','name', 
'height=255,width=250,toolbar=no,directories=no,status=no, linemenubar=no,scrollbars=no,resizable=no ,modal=yes'); 
} 
    } 
    </script> 
    <button onclick="openWindow();">Open window</button> 
    </body> 
    </html> 

如果上面的代码不能正常工作,请使用jQuery模态对话框。您可以使用iframe将任何网址加载到对话框中。

+0

再次阅读问题。 '但它显示了我的两个实例父页面以及弹出页面。当弹出页面打开,然后不允许点击父页面。' – 2012-07-20 07:25:30

+0

user970349 ::看我已经问问模式对话框在JavaScript中 – John 2012-07-20 07:32:14

+0

用户window.showmodaldialog也不能作为模式对话框工作我检查它。 – 2012-07-20 07:34:04

2

“window.open”不起作用。这个命令总是打开一个弹出窗口,而不是“始终”在其父窗口之上。

2个选项:

  1. 如果你只想让用户输入搜索字符串,你可以使用

    prompt("Please enter a search string:", ""); 
    
  2. 如果您有配合物搜索表单,你必须创建一个为你自己的模态对话框。 有一些框架提供了这种功能(谷歌的“jQuery”),或者你自己创建它。不应该很难,告诉我,如果你需要一些帮助!

+0

PLEADE READ MY MY QUETION ATLEAST ONCE我必须打开模式弹出页面按钮单击 – John 2012-07-20 07:35:19

+0

我做了,并且正如我告诉过你的,不可能使用window.open来保证安全,并使其在所有浏览器中都能正常工作。你必须使用jQuery或我们自己编写的东西在JavaScript中生成模态windown。 – 2012-07-20 12:07:46

相关问题