IE的強制回應對話方塊設計

來源:互聯網
上載者:User
對話方塊|設計
  在開發 Intranet Web Mis 的過程中,大家發現如果運用強制回應對話方塊,程式的流程將更為清楚。在某些情況,使用者必須進行某些操作之後,才能繼續後面的事情。比如:某些安全性要求比較高的操作,需要操作者輸入口令以確認。如果實現了強制回應對話方塊,那麼一個WEB程式看上去更象一個VB 或 DELPHI 開發的應用程式。結合運用 ASP 和 DHTML ,可以實現強制回應對話方塊。
  本文以 msgbox 的實現為例。用戶端 VBScript 有一個函數 Msgbox() (以及衍生出來的Alert()、confirm())。我們常常需要 msgbox 顯示一些簡要提示或是簡單選擇,但是遺憾的是,Msgbox 功能有巨大缺陷。如果是中文句子,在西文系統下,只怕只能看到一串“ ???”即使安裝了中文平台(如南極星)。用戶端 Jscript 類似的函數Alert() 和 confirm() ,當然也存在著相同的問題。
  幸好,在微軟 DHTML 說明書找到了一個函數: showModalDialog() 。結合 DHTML 和ASP 便可實現 MsgBox 的功能,並且無操作平台 CODEPAGE 不同的煩惱。

  <<<< showModalDialog 語 法 >>>>
  variant = object.showModalDialog(sURL [, vArguments [, sFeatures]])
  參數說明:
  sURL:指定要裝載和顯示的檔案的 URL 地址。
  vArguments:可選。Variant 變數在顯示檔案時設定的參數。這個參數可以傳送包括數組在內的資料,對話方塊通過訪問 window 對象的 dialogArguments 屬性,來獲得這些屬性。(注意:通過 ASP 檔案後面加?,可以向 ASP 發送參數!)
  sFeatures:可選。指定對話方塊表單的參數,可有下列內容。
  文法描述:
  dialogWidth:number 視窗寬度
  dialogHeight:number 視窗高度
  dialogTop:number 視窗上部座標
  dialogLeft:number 視窗右部座標
  center:{yes | no | 1 | 0 } 是否置中(預設為yes)

  <<<< 以 下 為 msg.asp 源 碼 >>>>
    <%@ LANGUAGE="VBSCRIPT" %>
    <%
    dim title
    dim msg
    dim itype
    title=request("title")
    msg=request("msg")
    itype=request("type")
    %>
   
    <html>
    <head>
    <meta NAME="GENERATOR" Content="Microsoft FrontPage 3.0">
    <meta HTTP-EQUIV="Content-Type" content="text/html; charset=gb_2312-80">
    <title><%=title%></title>
    </head>

    <body language="javascript" topmargin="0" leftmargin="0" bgcolor="#000000" text="#FFFF00">
    <table border="0" cellpadding="0" width="100%" cellspacing="0">
    <tr>
    <td width="100%"><p align="center"><br><%=msg%><br>
    <br>
    <%if itype=0 then
    response.write "<input type='button' value='確 定' name='cmdOk' >"
    elseif itype=1 then
        response.write "<input type='button' value='確 定' name='cmdOk' >  "
        response.write "<input type='button' value='取 消' name='cmdCANCEL' >"
    elseif itype=2 then
        response.write "<input type='button' value=' 是 ' name='cmdYes' >  "
        response.write "<input type='button' value=' 否 ' name='cmdNo' >"
    end if%>
    </td>
    </tr>
    </table>
    </body>
    </html>

  <<<< 調 用 範 例 >>>>
    <html>
    <head>
    <meta NAME="GENERATOR" Content="Microsoft FrontPage 3.0">
  <meta HTTP-EQUIV="Content-Type" content="text/html;
    charset=gb_2312-80">
    <title>Document Title</title>
    </head>
    <script langauge="javascript">
    function message(title,msg,type)
    {
    var ret=0;
    ret=showModalDialog(
    "msg.asp?itle="+title+"&msg="+msg+"&type="+type,
    "","dialogWidth:30;dialogHeight:8;center:1")
    return ret
    }
    // 此 函 數 將 調 用 方 法 簡 化 , 使 它 在 調 用 方 法 上 看 起 來 更 象 系 統 的 MSGBOX
    </script>
    <body>
    <form method="POST" action="../_vti_bin/shtml.dll/msg/test.asp" webbot-action="--WEBBOT-SELF--">
    <p><input type="button" value="test" name="cmdTest1" language="javascript"
        ></p>
    </form>
    </body>
    </html>



相關文章

Beyond APAC's No.1 Cloud

19.6% IaaS Market Share in Asia Pacific - Gartner IT Service report, 2018

Learn more >

Apsara Conference 2019

The Rise of Data Intelligence, September 25th - 27th, Hangzhou, China

Learn more >

Alibaba Cloud Free Trial

Learn and experience the power of Alibaba Cloud with a free trial worth $300-1200 USD

Learn more >

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。