首页/Home Web Mobile (XHTML MP) XHTML MP 选择列表

XHTML MP 选择列表

PrintE-mail
Friday, 17 October 2008 12:50  

选择列表是用户可以选择的一系列选项. <select></select> 标签在 XHTML MP 中会定义一个选项列表. 其中包含一个或更多的 <option></option> 标签对. <option></option> 标签对定义了列表的选项.

要把已选项的值发送到服务器, 必须要把 <select> 标签与 <form> 标签结合使用. 你可以在本教程稍后的 "在 XHTML MP 中向服务器提交表单数据" 部分学习到如何使用 <form> 标签和如何在服务器上读取所选项目的值.

<select> 标签的 name 属性指定了选择列表的名字. 在服务器端, name 将被用于检索所选项目的值. 选项的值是用 <option> 标签的 value 属性的值指定的.

我们来看一下下面这个 XHTML MP 例子. 它可以让你对我们所讲的内容有一个更好的理解.

(selection_list_example1.xhtml)

<?xml version="1.0"?>
<!DOCTYPE html PUBLIC "-//WAPFORUM//DTD XHTML Mobile 1.0//EN"
   "http://www.wapforum.org/DTD/xhtml-mobile10.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
  <head>
    <title>XHTML MP Tutorial</title>
  </head>

  <body>
    <form method="get" action="xhtml_mp_tutorial_proc.php">
      <p>
        <select name="selectionList">
          <option value="tutorial_A">XHTML MP Tutorial Part A</option>
          <option value="tutorial_B">XHTML MP Tutorial Part B</option>
          <option value="tutorial_C">XHTML MP Tutorial Part C</option>
        </select>

      </p>
    </form>
  </body>
</html>

上述 XHTML MP 例子在 WAP 浏览器上显示的结果如下.

          SE select 效果          Nokia select 显示效果

         Sony Ericsson T610              Nokia 移动浏览器 4.0

如果你选择了选项列表, 可用选项的显示效果如下:

          SE select 显示效果          Nokia select 显示效果

          Sony Ericsson T610             Nokia 移动浏览器 4.0

<option> 标签的 selected 属性可被用于设定缺省选项. 缺省选项是初始化时选定的选项. selected 属性仅接受 "selected" 值. 下面是演示如何预选择第二个选项 "XHTML MP Tutorial Part B" 的例子:

<option value="tutorial_B" selected="selected">XHTML MP Tutorial Part B</option>

选择多个选项

在前面的 XHTML MP 例子中, 用户只可以选择列表中的一项. 要允许用户选择多个选项选项, 你就要用到 <select> 标签的 multiple 属性. 对 multiple 属性的赋值只能是 "multiple". 这种选项列表中的选项在屏幕上会被显示为复选框.

我们来看下面这个 XHTML MP 例子:

(select_list_example2.xhtml)

<?xml version="1.0"?>
<!DOCTYPE html PUBLIC "-//WAPFORUM//DTD XHTML Mobile 1.0//EN"
   "http://www.wapforum.org/DTD/xhtml-mobile10.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
  <head>
    <title>XHTML MP Tutorial</title>
  </head>

  <body>
    <form method="get" action="xhtml_mp_tutorial_proc.php">
      <p>
        <select name="selectionList" multiple="multiple">
          <option value="tutorial_A">XHTML MP Tutorial Part A</option>
          <option value="tutorial_B">XHTML MP Tutorial Part B</option>
          <option value="tutorial_C">XHTML MP Tutorial Part C</option>
        </select>
      </p>
    </form>
  </body>
</html>

上面的 XHTML MP 代码的显示结果如下:

         SE 中选择多个选项          Nokia 中选择多个选项

         SE 中选择多个选项          Nokia 中选择多个选项

          Sony Ericsson T610             Nokia 移动浏览器 4.0

当 <select> 标签中出现 multiple 属性时, 也是可以指定多个缺省选项的. 要指定多个缺省选项, 只须向每个缺省要选择的选项的 <option> 标签中添加 selected="selected" 就可以了. 下面是一个示例:

<select name="selectionList" multiple="multiple">
  <option value="tutorial_A" selected="selected">XHTML MP Tutorial Part A</option>
  <option value="tutorial_B" selected="selected">XHTML MP Tutorial Part B</option>
  <option value="tutorial_C">XHTML MP Tutorial Part C</option>
</select>

上面几行代码告诉了 WAP 浏览器, 选择列表的第一个和第二个选项要被预先选择.

组织 XHTML MP 中选择列表的选项

如果某 XHTML MP 选择列表包含的选项非常多, 看上去就不会显得很有组织性. 要避免此问题, 你可以把选项安排成几个组. 定义一个选项组用的是 <optgroup></optgroup> 标签对. <optgroup> 标签的 label 属性指定了一个选项组的标题.

关于 <optgroup></optgroup> 标签的用法, 下面的 XHTML MP 例子给出了演示:

(select_list_example3.xhtml)

<?xml version="1.0"?>
<!DOCTYPE html PUBLIC "-//WAPFORUM//DTD XHTML Mobile 1.0//EN"
   "http://www.wapforum.org/DTD/xhtml-mobile10.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
  <head>
    <title>XHTML MP Tutorial</title>
  </head>

  <body>
    <form method="get" action="xhtml_mp_tutorial_proc.php">
      <p>
        <select name="selectionList">
          <optgroup label="Tutorial Ch1">
            <option value="tutorial_1A">Part 1A</option>
            <option value="tutorial_1B">Part 1B</option>
            <option value="tutorial_1C">Part 1C</option>
          </optgroup>
          <optgroup label="Tutorial Ch2">
            <option value="tutorial_2A">Part 2A</option>
            <option value="tutorial_2B">Part 2B</option>
            <option value="tutorial_2C">Part 2C</option>
          </optgroup>
          <optgroup label="Tutorial Ch3">
            <option value="tutorial_3A">Part 3A</option>
            <option value="tutorial_3B">Part 3B</option>
            <option value="tutorial_3C">Part 3C</option>
          </optgroup>
        </select>
      </p>
    </form>
  </body>
</html>

下面是上述 XHTML MP 例子在 WAP 浏览器中的显示效果:

          SE 中组织选项          Nokia 中组织选项

          SE 中组织选项          Nokia 中组织选项

          SE 中组织选项          Nokia 中组织选项

          SE 中组织选项          Nokia 中组织选项

          Sony Ericsson T610             Nokia 移动浏览器 4.0

 

回复

留个脚印儿吧.


回复