当前位置导航:炫浪网>>网络学院>>网页制作>>ASP教程

IE4 的 模 式 对 话 框 设 计

       在 开 发 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 属 性 , 来 获 得 这 些 属 性 。 ( 注 意 : 通 过 A S P 文 件 后 面 加 ? , 可 以 向 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" onload="window.returnValue=0" 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' onclick='window.returnValue=1;window.close()'>"
  
      elseif itype=1 then
  
          response.write "<input type='button' value='确 定' name='cmdOk' onclick='window.returnValue=1;window.close()'>  "
  
          response.write "<input type='button' value='取 消' name='cmdCANCEL' onclick='window.returnValue=0;window.close()'>"
  
      elseif itype=2 then
  
          response.write "<input type='button' value=' 是 ' name='cmdYes' onclick='window.returnValue=1;window.close()'>  "
  
          response.write "<input type='button' value=' 否 ' name='cmdNo' onclick='window.returnValue=0;window.close()'>"
  
      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"
  
          onclick="alert(message('title','message is here',2))"></p>
  
      </form>
  
      </body>
  
      </html>
  

 
上一篇:亲密接触ASP.net(6) 下一篇:关于inc文件
相关内容
赞助商链接