WAP ææ¶
Â
¨        WML æ¯ä¸ç§éç¨äºæ 线äºè¿ç½çæ è®°è¯è¨ã
¨        WAP ï¼ Wireless Application Protocol ï¼æ¯éç¨äºæ 线äºè¿ç½çç½ç»åè®®ã
¨        客æ·æ¯åç§åºäº WAP åè®®çææ设å¤æè æ¯åç§æ¨¡æå¨ã
¨        WAP ç½å ³æ两个åè½ï¼å¯¹ WML ç½é¡µè¿è¡ç¼ç å解ç ï¼å®ç° HTTP åè®®å WAP åè®®ä¹é´ç转æ¢ã
¨        WAP æå¡å¨æ¯æå¨ MIME é ç½®ä¸è®¾ç½®äº WML æ°æ®ç±»åç Web æå¡å¨ã
¨        为ä»ä¹éç¨ WAP ï¼æ¹ä¾¿ãå®å ¨ã
Â
URL
¨        WML 使ç¨å HTML ç¸åçå¼ç¨æ¹å¼ã
http://www.motorola.com/great.wml
Â¨Â Â Â Â Â Â Â Â å¨ URL å使ç¨ç段ã
http://www.motorola.com/great.wml#login
¨        ç¸å¯¹ç URL ââåºç¡ç URL æ¯å½åçå¡çã
<go href=â/nextâ />
Content Type
¨        å¨äºèç½ä¸ä½¿ç¨ WML æ°æ®ç±»åã
¨        è¦æ³ä½¿ç¨ Web æå¡å¨ä¼ è¾ WML æ°æ®ç±»åï¼å°±éè¦å¯¹ Web æå¡å¨ç MIME 设置è¿è¡é ç½®ã
¨        éè¦å¢å 以ä¸æ°æ®ç±»åï¼
wml ï¼ text/vnd.wap.wml
wmlc ï¼ application/vnd.wap.wmlc ï¼ç»è¿ç¼ç WML æ°æ®ç±»åï¼
wmls ï¼ text/vnd.wap.wmlscript
wbmp ï¼ image/vnd.wap.wbmp    (BMP å¾è±¡ )
å ¶ä»å¯éçæ°æ®ç±»åï¼
wmlsc ï¼ application/vnd.wap.wmlscriptc
wmlscript ï¼ text/vnd.wap.wmlscript
ws ï¼ text/vnd.wap.wmlscript
wsc ï¼ application/vnd.wap.wmlscriptc
WML å符é
¨        WML æ¯ XML çåéï¼ç»§æ¿äº XML çå符é设置ã
¨        WML æ档缺ççå符éæ¯ UTF â 8 ã
¨        æ¾ç¤ºä¸æãåªè¦å¨å¼å¤´ä½¿ç¨ encoding å°±å¯ä»¥ãå¨ Motorola L2000www ä¸æµè¯éè¿ã
<?xml version="1.0" encoding="gb2312"?>
Â
å ç´ åå±æ§
¨        å ç´
1 ï¼ä¸ä¸ªå®æ´ç WML æ è®°æ以ä¸ä¸¤ç§æ ¼å¼ï¼
      <tag> content </tag>
      <tag/>
¨        å±æ§
1ï¼Â å¯ä»¥éæå°æå®ææ·»å å ç´ çå±æ§ã
2ï¼Â å±æ§çæ ¼å¼ï¼ <tag attr=âabcdâ/> ã
3ï¼Â ææç XML ååé½æ¯å¤§å°åææçã
4ï¼Â ææçå±æ§å¼é½å¿ é¡»ç¨åå¼å·æåå¼å·æ¬èµ·æ¥ã
åé
¨        WML å¡çä¸å¯ä»¥ä½¿ç¨åéã
¨        æè¿°åéçè¯æ³å¨ WML ä¸ææé«ç解éä¼å 级ã
¨        å½ç©ºæ ¼æ æ³è¡¨ç¤ºä¸ä¸ªåéåç»æçæ¶åï¼å°±å¿ 须使ç¨æ¬å·å°åæ°åæ¬èµ·æ¥ã
¨        $$ å¨ WML ä¸ä»£è¡¨ä¸ä¸ªâ $ â符å·ã
¨        åéè¯æ³æ ¼å¼å¦ä¸ï¼
$identifier
$(identifier)
$(identifier:conversion)
¨        åé使ç¨è¯´æï¼
1ï¼Â å¯ä»¥å¨å符串ä¸ä½¿ç¨ã
2ï¼Â å¯ä»¥å¨è¿è¡ä¸æ´æ°åéçå¼ã
3ï¼Â åéå¤äºè®¾ç½®ç¶æï¼ NOT NULL ï¼ï¼å¦æåéä¸çåäºç©ºå符串ã
4ï¼Â åéå¤äºæªè®¾ç½®ç¶æï¼ NULL ï¼ï¼å¦æåéçåäºç©ºå符串ã
¨        åéæ¿ä»£ï¼
1ï¼Â åéçæ°å¼å¯ä»¥ä»£å ¥å¡çä¸çææ¬ã
2ï¼Â åªæææ¬é¨åå¯ä»¥å®ç°æ¿ä»£ã
3ï¼Â ä»»ä½å ç´ åå±æ§é½ä¸è½ä½¿ç¨åéæ¥æ¿ä»£ã
4ï¼Â æ¿ä»£å°å¨è¿è¡æåçã
5ï¼Â æ¿ä»£å°ä¸å½±ååéç°å¨çå¼ã
6ï¼Â æ¿ä»£æ¯æç §å符串æ¿ä»£çæ¹å¼å·¥ä½ã
7ï¼Â å¦æä¸ä¸ªæ²¡æå®ä¹çåéè¦å®ç°æ¿ä»£ï¼é£ä¹è¯¥åéå°è¢«çä½ç©ºå符串ã
8ï¼Â åéåæ¯ç± US-ASCII ç ãä¸å线åæ°åç»æï¼å¹¶ä¸åªè½ä»¥ US-ASCII ç å¼å¤´ã
9ï¼Â åéåæ¯å¤§å°åææçã
â $ â符å·
¨        ç¾å 符å·
1ï¼Â è¦æ³å¨ææ¬ä¸æ¾ç¤ºç¾å 符å·ï¼å¿ é¡»æ对使ç¨ã
2ï¼Â ä¸ä¸ªç¾å 符å·è¡¨ç¤ºåéæ¿ä»£ã
3ï¼Â ä¸ä¸ªç®åçæ¾ç¤ºç¾å 符å·çä¾åï¼
This is a $$ character.
¨        æææ§
1ï¼Â å¨ç¾å 符å·åé¢æ¥å符串é½å°è¢«è®¤ä¸ºæ¯åéæ¿ä»£æè æ¯çæã
2ï¼Â å 个æ æçä¾åï¼
<!--bad variable syntax -->
Balance left is $10.00.
<!âbad placement (in the type attribute)-->
<do type=âx-$(type)â label=â$typeâ>
Newcontext å±æ§
      Newcontext çäº true æ false ï¼å°å³å®æµè§æ¯å¦å以ä¸äºæ ï¼
¨        å é¤ææå¨å½åä¸ä¸æä¸å®ä¹çåéã
Â¨Â Â Â Â Â Â Â Â æ¸ é¤åå²ä¿¡æ¯ã
¨        éæ°è®¾ç½®ææçç¶æ为ä¸ä¸ªç¼ºççç¶æã
<card id=âcard1â title=âMortgage Calcâ newcontext=âtrueâ>
大å°åææ
¨        WML å XML é½æ¯å¤§å°åææçè¯è¨ã
¨        ææç WML æ è®°åå±æ§é½æ¯å¤§å°åææçã
¨        任ä½æ举çå±æ§å¼ä¹æ¯å¤§å°åææçã
页é¢åå¡ç
¨        WML æ¯ XML è¯è¨çåéã
¨        ä¸ä¸ª WML åºç¨æ¯ç±è®¸å¤é¡µé¢ï¼ Deck ï¼æç»æçãä¸ä¸ª WML ç页é¢å°±ç¸å½äº HTML çä¸é¡µã
¨        ä¸ä¸ª WML 页é¢æ¯ç±æ件声æå WML æ 记对ç»æã
¨        WML æ 记对ä¸é´æä¸ä¸ªæå¤ä¸ªå¡çç»æã
¨        WML å°±æ¯å¨å个å¡çä¹é´è½¬æ¢åä¼ éä¿¡æ¯ã
WML æ 记对
¨        WML æ 记对æ¯ä»»ä½ä¸ä¸ª WML 页é¢çæ ¹å ç´ ã
¨        WML æ 记对ä¸å¯ä»¥å å«ä¸ä¸ªæå¤ä¸ªå¡çï¼åå¯éç头å ç´ ã
¨        WML æ 记对ä¸å¯ä»¥ä½¿ç¨å¯éçâ模æ¿âæ¥çæå ¶æå å«çææå¡çã
WML ä¾å
      <wml>
             <card>
                    <p>
                           <do type=âacceptâ>
                                  <go href=â#card2â/>
                           </do>
                           Hello world !
                           This is the first cardâ¦
                    </p>
             </card>
             <card id=âcard2â>
                    <p>
                           This is the second card.
                           Goodbye
                    </p>
             </card>
      </wml>
æ件声æ
¨        XML 声ææ»æ¯å¨æ件ç第ä¸è¡ã
<?xml version=â1.0â?>
¨        DOCTYPE 声æã
<!DOCTYPE WML PUBLIC â-//WAPFORUM//DTD WML1.1//ENâ http://www.wapforum.org/DTD/wml_1.1.xml>
äºä»¶ä¸å¯¼èª
¨        导èªä¸äºä»¶å¤çï¼
1ï¼Â WML å æ¬å¯¼èªåäºä»¶å¤ç模åã
2ï¼Â WML å 许ä½è æå®éè¦å¤ççäºä»¶ã
3ï¼Â äºä»¶å¯ä»¥åæéè¦å®æçä»»å¡æç»å¨ä¸èµ·ã
4ï¼Â URL 导èªå°±æ¯è¿æ ·çä¸ä¸ªä¾åã
5ï¼Â äºä»¶æç»æ¯éè¿å ç§å ç´ å£°ææ¥å®æçï¼å æ¬ï¼ go ã do å onevent ã
6ï¼Â Do å ç´ æ¯ Go å ç´ éè¦ç¨æ·æ´å¤çåä¸ã
Do å ç´
¨        Do å ç´ æä¾äºä¸ä¸ªéç¨çäºä»¶å¤çæºå¶ï¼ä½¿å¾ç¨æ·å¯ä»¥åä¸å½åå¡ççäºä»¶å¤çã
¨        WML æä¾ä¸äºé¢å å®ä¹ç Do 模åã
¨        accept ï¼ç¡®å®ï¼ææ¥åï¼ã
¨        prev ï¼è¿åå°ä¸æ¬¡çä½ç½®ã
¨        help ï¼è¯·æ±å¸®å©ã
¨        options ï¼ä¸ä¸æææçé项请æ±ã
<do type=âoptionsâ name=âdo1â label=âoptionsâ>
      <go href=â/optionsâ/>
</do>
ä»»å¡
¨        Go å ç´ ââå½ç¨æ·éä¸è¯¥å ç´ æ¶ï¼å°±å¼å¯¼ç¨æ·å» WML ä¸æå® URL ã
<go href=http://www.mot.com.wireless.wml>Motorola Wireless</go>
¨        Prev å ç´ ââå½ç¨æ·éä¸è¯¥å ç´ æ¶ï¼å°±å¼å¯¼ç¨æ·å»ä¸æ¬¡ç¨æ·è®¿é®è¿ç URL ã
<do type=âoptionsâ name=âdo1â label=âdefaultâ>
      </prev>
</do>
¨        Refresh å ç´ ââå½ç¨æ·éä¸è¯¥å ç´ æ¶ï¼åéå¼å°è¢«éæ°è®¾ç½®ã
<do type=ârefreshâ>
      <refresh>
             <setvar name=âfirstnameâ value=âdavidâ>
             <setvar name=âlastnameâ value=âsmithâ>
             <setvar name=âageâ value=â29â>
      </refresh>
</do>
Setvar å ç´
¨        æå®å¨å½åçä¸ä¸æä¸çåéçå¼ï¼ä»ä¾§é¢å½±åæ£å¨è¿è¡çä»»å¡ã
Â¨Â Â Â Â Â Â Â Â å¿ é¡»ä½¿ç¨ name å±æ§æå®åéçååã
Â¨Â Â Â Â Â Â Â Â å¿ é¡»ä½¿ç¨ value å±æ§æå®æéè¦èµç»åéçå¼ã
Select å ç´ å Option å ç´
¨        Select å ç´ å Option å ç´ æ¯ç¨æ¥å¨ WML ä¸å½¢æéæ©ä»»å¡ã
¨        Option å ç´ å¯ä»¥æå®å¨ç¨æ·ä½åºéæ©åçç®æ å°åã
<select name=âtypeâ>
      <option value=âboxedâ onpick=â#selectBoxedâ>boxed</option>
      <option value=âarrangedâ onpick=âselectArrangedâ>arranged</option>
</select>
Input å ç´
¨        Input å ç´ æ¯ç¨æ¥æ¶éç¨æ·çè¾å ¥ã
1ï¼Â name å±æ§æ¯ç¨æ¥æå®åéçååã
2ï¼Â value å±æ§å¯ä»¥æå®åé缺ççå¼ã
<input name=âfirstnameâ type=âtextâ value=âRobertâ format=â*Aâ maxlength=â32â/>
<input type=âtextâ name=âageâ format=â*Nâ/>
<input type=âtextâ name=âaddressâ format=â*Mâ/>
<input type=âpasswordâ name=âpasswordâ/>
3ï¼Â type å±æ§å¯ä»¥ç¨æ¥æå®æå¯ç è¾å ¥æ¨¡å¼è¿è¡è¾å ¥ï¼å¦åå°±æ¯æ®éçææ¬è¾å ¥æ¨¡å¼ã
4ï¼Â format å±æ§ç¨æ¥æå®è¾å ¥çå 容æ¯æ°åï¼ N ï¼ãåæ¯ãåæ¯åæ°åï¼è¾å ¥é¿åº¦ï¼å¤§åæè å°åççã
Text å ç´
¨        段è½ï¼ <p></p> ï¼èªå¨æ¢è¡æ¨¡å¼åæ¢ï¼
¨        空ç½ï¼ç©ºæ ¼ãå¶è¡¨ç¬¦åæ¢è¡é½å°è¢«æ¾ç¤ºä¸ºç©ºç½ã
¨        éç¹ï¼ em ï¼å¼ºè°ï¼ï¼ strong ï¼ç¹å«å¼ºè°ï¼ï¼ i ï¼æä½ï¼ï¼ u ï¼ä¸å线ï¼ï¼ big ï¼é¢å®ä¹ç大åä½ï¼ï¼ small ï¼é¢å®ä¹çå°åä½ï¼ã
¨        br å ç´ ï¼å»ºç«æ°çä¸è¡ã
<p>
      <b>
             Welcome toâ¦
      </b>
      <strong><i>
             Mobile
      </i></strong>
      <u>
             ADK
      </u>
</p>
è¶ çº§é¾æ¥
¨        a å ç´ å anchor å ç´ è¢«ç¨æ¥å建ä¸ä¸ªè¶ 级é¾æ¥ãéä¸è¯¥å ç´ çæ¶åï¼ç¨æ·å°è¢«å¸¦å ¥å°é¾æ¥çå°åï¼å¯ä»¥æ¯å¦å¤ç页é¢æè æ¯åä¸é¡µé¢ä¸çä¸åå¡çï¼ã
¨        ä¹å¯ä»¥ä¸ä½¿ç¨ a å ç´ å anchor å ç´ ï¼èéç¨ go å ç´ ä¸ç href å±æ§æ¥å建ä¸ä¸ªè¶ 级é¾æ¥ã
1 ï¼ <anchor>follow me
             <go href=âdestinationâ/>
</anchor>
             2 ï¼ <a href=âdestinationâ>follow me</a>
             3 ï¼ <do type=âacceptâ label=âACCEPTâ>
                           <go href=âhttp://www.abc.com/yourcodeâ method=âpostâ>
                                  <postfield name=âwâ value=â12â>
                                  <postfield name=âpasswordâ value=âyour passwordâ/>
                           </go>
                    </do>
Timer å ç´
¨        Timer å¯ä»¥ç¨æ¥å»¶æ¶æ¾ç¤ºé¡µé¢æå¡çï¼æå¨é¡µé¢åå¡çé´å®ç°åæ¢ä»¥åå¾å¨ç»ææã
¨        ä¸é¢çä¾åå°±æ¯å¨æ¾ç¤ºâ Hello World âäºç§éåï¼ç¨æ·å°è¢«èªå¨å¼å¯¼è³ â/nextâ ææå®çä½ç½®ï¼
<wml>
      <card ontimer=â/nextâ>
             <timer value=â50â/>
             <p>
                    Hello World !
             </p>
      </card>
</wml>
注é
¨        ç®åç注éï¼åè¡æå¤è¡ï¼æ³¨éä¸æ²¡æ WML æ è®°ï¼ã
<!âPut simple comment here -->
Â¨Â Â Â Â Â Â Â Â ä½¿ç¨ CDATA æ è®°æ¥å®ç°å¸¦æ WML æ è®°ç注éã
<![CDATA[lot of stuff here <b>bold text</b>â¦
      â¦
      <table column=â2â>â¦</table> still lot more
      â¦
]]>
Template å ç´
¨        Template å ç´ å£°æä¸ä¸ªå¨é¡µé¢ä¸ææå¡çé½å¯ä»¥ä½¿ç¨çäºä»¶å¤ç模åã
1ï¼Â 模åä¸çäºä»¶å¤çå°èªå¨åºç¨äºåä¸é¡µé¢ä¸çææå¡çã
2ï¼Â æ个å¡çå¯ä»¥éè¿å®ä¹ååçäºä»¶å¤çæ¥æ¿ä»£æ¨¡åä¸çäºä»¶å¤çã
<wml>
      <template>
             <do type=âoptionsâ name=âdo1â label=âdefaultâ>
                    <prev/>
             </do>
      </template>
      <card id=âfirstâ>
             <!â 该å¡çå°èªå¨å¥ç¨æ¨¡åä¸å®ä¹çäºä»¶å¤çè¿ç¨ -->
             â¦
      </card>
      <card id=âsecondâ>
             <!â 该å¡çå°ä½¿ç¨ç©ºæä½ï¼ noop ï¼æ¥æ¿ä»£æ¨¡åä¸å®ä¹çäºä»¶å¤çè¿ç¨ï¼é£ä¹å°±çä»·äºè¯¥å¡çä¸æ²¡æ该äºä»¶å¤çè¿ç¨ â>
             <do type=âoptionsâ name=âdo1â>
                    <noop/>
             </do>
             â¦
      </card>
      <card id=âthirdâ>
             <!â 该å¡ç使ç¨ååçäºä»¶å¤çæ¿ä»£æ¨¡åä¸æä¾çäºä»¶å¤ç â>
             <do type=âoptionsâ name=âdo1â label=âoptions>
                    <go href=â/optionsâ/>
             </do>
      </card>
</wml>
Table å ç´
¨        Table å ç´ æ¯ç¨æ¥å建è½å®¹çº³ææ¬åå¾ççè¡¨æ ¼ã
1ï¼Â align å±æ§æ¯ç¨æ¥æå®å¯¹é½çæ¹å¼ï¼ âLâ æ¯å·¦å¯¹é½ï¼ âCâ æ¯å¯¹ä¸ï¼ âRâ æ¯å³å¯¹é½ã缺çç对é½æ¹å¼æ¯ä»å·¦å°å³ç左对é½æ¹å¼ï¼ã
<table columns=â2â>
       <tr><td>One</td><td>Two</td></tr>
       <tr><td>1</td><td>2</td></tr>
       <tr><td>BA</td><td>B</td></tr>
</table>
2ï¼Â tr å ç´ ç¨æ¥æå®è¡¨æ ¼çè¡ã
3ï¼Â td å ç´ ç¨æ¥æå®è¡¨æ ¼çåã
<table columns=â2â>
       <tr><td>One</td><td>Two</td></tr>
       <tr><td>1</td><td>2</td></tr>
       <tr><td>BA</td><td>B</td></tr>
</table>
å¾æ
¨        alt å±æ§æå®å¯éçææ¬ï¼å½è®¾å¤ä¸è½æ¾ç¤ºå¾è±¡çæ¶åã
¨        src å±æ§æå®å¾è±¡çæ¥æºã
¨        align å±æ§æå®å¾è±¡ä¸ç¸ä¸´çææ¬å¯¹é½ã
<p>
      <img alt=âMOTOROLAâ src=âhttp://ni-icsd/genevaw/logo.gifâ/><br/>
      Telecom 99
</p>
Postfield å ç´
¨        æå®ååå§æå¡å¨æå®æ交æ¶åçåæ°ååååæ°æ°å¼ã
1ï¼Â Login å Password æéªæ¯æ常ç¨æ交ã
2ï¼Â ä¸ä¸ªä½¿ç¨ go å ç´ çæ交ä¾åã
<go href=âhttp://193.120.145.194:80/wapâ methos=âpostâ>
      <postfield name=âLIâ value=â$LIâ/>
<postfiels name=âPVâ value=â$PVâ/>
</go>
äºä»¶
¨        ontimer äºä»¶ï¼è¯¥äºä»¶åçå¨è®¡æ¶å¨è¿æçæ¶åã
¨        onenterforward äºä»¶ï¼è¯¥äºä»¶åçå¨ç¨æ·éä¸ä¸ä¸ªææç URL ä¹åï¼å¨æ£å¼å¼å¯¼ç¨æ·å»è¯¥ URL å°åä¹åã
¨        onenterbackward äºä»¶ï¼è¯¥æ¶é´åçå¨ç¨æ·éä¸ä¸ä¸ªææç Prev æä½ä¹åï¼å¨æ£å¼å¼å¯¼ç¨æ·ä¹åã
¨        onpick äºä»¶ï¼è¯¥äºä»¶åçå¨ç¨æ·éä¸æ个é项ã
<card>
      <onevent type=âonenterforwardâ>
             <go href=â/url_to_check_securityâ/>
      </onevent>
      <p>
             Help
      </p>
             </card>
             <card onenterforward=â/url_to_check_securityâ/>
                    <p>
                           Hello
                    </p>
             </card>
WML æ ¸å¿æ°æ®ç±»å
¨        é¿åº¦
1ï¼Â å¯ä»¥ç¨æ´æ°æå®ç»å¸ï¼å±å¹ãçº¸å¼ ï¼çåç´ å¤§å°ï¼æè ç¨ç¾åæ°è¡¨ç¤ºå ç¨çé¿åº¦æ宽度ã
2ï¼Â â 50 â =50 个åç´ ã
3ï¼Â â 50% â = å ç¨ä¸åçä½ç½®ã
4ï¼Â åªè½ç¨å¨å±æ§å¼ä¸ã
ID å Class å±æ§
¨        ææç WML å ç´ æä¸¤ä¸ªæ ¸å¿å±æ§ï¼ id å class ã
¨        è¿ä¸¤ä¸ªå±æ§è¢«ç¨äºæå¡å¨æ¹çä¿¡æ¯ä¼ è¾ã
¨        id æä¾æ个å ç´ å¨é¡µé¢ä¸å¯ä¸çååã
¨        class æ¥æ¶å ç´ ä¸ä¸ªæ´å¤ç class å®ä¹ã
¨        å¤ä¸ªå ç´ å¯ä»¥ä½¿ç¨åä¸ä¸ª class å®ä¹ã
¨        class çååæ¯å¤§å°åææçã
¨        å ç´ ä¹å¯ä»¥ä½ä¸º class ä¸çä¸ä¸ªé¨åã
WML ç¼ç¨æ导
¨        尽éæ¯ç¨æ·çæä½ç®åãå好ã
1ï¼Â 建ç«ä¸ä¸ªæä½æµç¨å¾ã
2ï¼Â å®ä¹æ¯ä¸ªå¡ççæä½ã
3ï¼Â ä¿ææ¯ä¸ªå¡çå°èä¸ç®åã
4ï¼Â å°½éåå°æé®ç次æ°ã
5ï¼Â ä¸è¦ä½¿ç¨ WML ææçå±æ§ï¼å个å家对 WML å ¼å®¹æ åµæ¯ä¸åçï¼ã
å建ä¸ä¸ªæ°ç WML æ件
      <?xml version=â1.0â?>
      <!DOCTYPE wml PUBLIC â-//WAPFORUM//DTD WML 1.1//ENâ
      âhttp://www.wapforum.org/DTD/WML_1.1.xmlâ>
      <wml>
             <card id=âcard_nameâ title=âtitle_nameâ>
                    <!âwrite your code here-->
             </card>
      </wml>
ä¿®æ¹å¡ç
Â¨Â Â Â Â Â Â Â Â æ ¹æ®èªå·±çéè¦æ¹åå¡çç id å title ã
¨        å¢å å¡ççå 容ã
<?xml version=â1.0â?>
<!DOCTYPE wml PUBLIC â-//WAPFORUM//DTD WML 1.1//ENâ
âhttp://www.wapforum.org/DTD/wml_1.1.xmlâ>
<wml>
      <card id=âwelcomeâ title=âwelcomeâ>
             <p>
                    MADK WML DEMO.
             </p>
      </card>
</wml>
å¢å å¨ä½
      <?xml version=â1.0â?>
      <!DOCTYPE wml PUBLIC â-//WAPFORUM//DTD WML 1.1 //ENâ
      âhttp://www.wapforum.org/DTD/wml_1.1.xmlâ>
      <wml>
             <card id=âwelcomeâ title=âwelcomeâ>
                    <do type=âacceptâ>
                           <go href=â#greetingâ/>
                    </do>
             <p>
                    MADK WML DEMO.
             </p>
             </card>
             <card id=âgreetingâ>
                    <p>
                           Welcome to the wireless bookshop.
                    </p>
             </card>
      </wml>
建ç«ä¸ä¸ªå¨ç»æ¶æ¯
      <card id=âgreetingâ ontimer=â#card2â title=âToolkit Demoâ>
             <timer value=â30â/>
             <p>
                    <big>
                           Welcome toâ¦
                    </big>
             </p>
      </card>
      <card id=âcard2â ontimer=â#card3â title=âToolkit Demoâ>
             <timer value=â30â/>
             <p>
                    <b>
                           the Wonderful
                    </b>
                    <u>
                           Wireless
                    </u>
             </p>
      </card>
      <card id=âcard3â title=âToolkit Demoâ>
             <p>
                    <big><i>
                           Bookstore.
                    </i></big>
             </p>
      </card>
建ç«éæ©å表
      <card id=âcard3â title=âToolkit Demoâ>
             <do type=âacceptâ>
                    <go href=â#collectBookTypeâ/>
             </do>
             <p>
                    <b><i>
                           BookStore.
                    </i></b>
             </p>
      </card>
      <card id=âcollectBookTypeâ>
             <p>
                    Science or novel:
                    <select name=âtypeâ>
                           <option value=âscienceâ onpick=â#scienceâ>Science</option>
                           <option value=ânovelâ onpick=â#novelâ>novel</option>
                    </select>
             </p>
      </card>
æ´å¤çéæ©
      <card id=âscienceâ>
             <p>
             select science title:
             <select name=âproductIDâ>
                    <option value=âuniverseâ onpick=â#priceâ>The Universe</option>
                    <option value=âspaceâ onpick=â#priceâ>Facts About Space</option>
                    <option value=âtimeâ onpick=â#priceâ>Time Machine</option>
             </select>
      </p>
</card>
<card id=ânovelâ>
      <p>
             select novel title:
             <select name=âtitleâ>
                    <option value=âspeedâ onpick=â#priceâ>Speed</option>
                    <option value=âterminatorâ onpick=â#priceâ>Terminator</option>
                    <option value=âghostâ onpick=â#priceâ>Ghost</option>
             </select>
      </p>
</card>
Scrollbar ä¸ Setvar
      <card id=âpriceâ>
             <do type=âacceptâ>
                    <go href=â#copies>
                           <setvar name=âpriceâ value=â30.0â/>
                           <setvar name=âdiscountâ value=â0.00â/>
                    </go>
             </do>
             <p>
                    Click accept to find the
                    Price and enter number of copies you need:
             </p>
      </card>
ä½¿ç¨ Input
¨        使ç¨æ£ç¡®çæ ¼å¼ã
¨        éæ©ä¸ä¸ªåéçæ é¢ã
¨        éå¶æè¾å ¥å 容çæ大é¿åº¦ã
<card id=âcopiesâ>
      <do type=âacceptâ>
             <go href=â#collectNameâ/>
      </do>
      <p>
             select number of copies:
             <input name=âuintâ title=âNo Of Copiesâ format=â*Nâ maxlength=â9â/>
      </p>
</card>
¨        æ¶éåå
<card id=âcollectNameâ>
      <do type=âacceptâ>
             <go href=â#collectAddressâ/>
      </do>
      <p>
             name:
             <input name=âfullNameâ title=âFull Nameâ format=â*Aâ maxlength=â9â/>
      </p>
</card>
¨        æ¶éå°å
<card id=âcollectAddress>
      <do type=âacceptâ>
             <go href=â#cardTypeâ>
                    <setvar name=âshipâ value=â4.0â/>
             </go>
      </do>
      <p>
      address:
      <input name=âaddressâ title=âAddressâ format=â*Mâ maxlength=â9â/>
</p>
</card>
éæ©ä¿¡ç¨å¡ç±»å
      <card id=âcardTypeâ>
             <p>
                    what kind of credit card?
                    <select name=âcreditCardTypeâ>
                    <option value=âvisaâ onpick=â#cardNoâ>visa</option>
                    <option value=âmastercardâ onpick=â#cardNoâ>mastercard</option>
                    <option value=âdiscoverâ onpick=â#cardNoâ>dicover</option>
                    </select>
             </p>
      </card>
è¾å ¥ä¿¡ç¨å¡å·ç
      <card id=âcardNoâ>
             <do type=âacceptâ>
                    <go href=â#cardDateâ/>
             </do>
             <p>
             card number
             <input name=âcardNumberâ title=âCard Numberâ format=â*Nâ maxlength=â16â/>
             </p>
      </card>
ä¿¡ç¨å¡è¿ææ¥æ
      <card id=âcardDateâ>
             <do type=âacceptâ>
                    <go href=â#confirmationâ/>
             </do>
             <p>
             expiration date
             <input name=âcreditCardExpâ title=âExpiration Dateâ format=â*Nâ maxlength=â8â/>
             </p>
      </card>
确认
      <card id=âconfirmationâ>
             <p>
                    Each is $$ $(price), you ordered $(unint) copies,
                    Shipping is $$ $(ship), and total is $$64,
                    Thank you ! Bye Bye !
             </p>
      </card>
å¤åå¡ççåºç¨
      <card id=âcollectAddressâ>
             <do tyoe=âacceptâ>
                    <go href=âcard.wml#cardTypeâ>
                           <setvar name=âshipâ value=â4.0â/>
                    </go>
             </do>
             <p>
             address:
             <input name=âaddressâ title=âAddressâ format=â*Mâ/>
             </p>
      </card>
å¤åç«ç¹çåºç¨
      <card id=âcollectAddressâ>
             <do type=âacceptâ>
                   <go href=âhttp://www.abc.com/wml/card.wml#cardTypeâ>
                           <setvar name=âshipâ value=â4.0â/>
                   </go>
             </do>
             <p>
             address:
             <input name=âaddressâ title=âAddressâ format=â*Mâ/>
             </p>
      </card>
è°ç¨ WMLScript å½æ°
      <card id=âconfirmationâ>
             <do type=âacceptâ label=âCalculateâ>
                    <go href=âcalculateTotal.wmls#calculateTotal($(price),$(unit),$(ship))â/>
             </do>
             <p>
                    Each is $$ $(price),
                    You ordered $(unit) copies,
                    Shipping is $$ $(ship), and
                    Total is $$ $(total)
             </p>
      </card>
WMLScript ä¾å
      //wml script used by book store application
      extern function calculateTotal(a,b,c)
      {
             //a: unit price
             //b: number of units
             //c: shipping charges
            Â
             var total=a*b+c;
             WMLBrowser.setVar(âtotalâ,total);
             WMLBrowser.refresh();
      }
WBMP æ ¼å¼
ç»è¿ä»ç»å°ç 究ï¼åç° WBMPçæ ¼å¼å¦ä¸(ä¾å¦Width=16,Height=15çä¸ä¸ªç½è²çç»é¢)ï¼
0x00,0x00,0x10,0x0f,0xff,0xff......,0xffã
头两个åè为0ï¼ç°å¨è¿ä¸æ¸ æ¥å®çç¨éã
第ä¸ä¸ªåè为Width,第å个åè为Height,åé¢çæ¯æ°æ®ã
æ°æ®æ以ä¸ç¹ç¹ï¼ç¨ä¸ä¸ªBit对åºä¸ä¸ªPixelã0表示é»è²ï¼1表示ç½è²ãé«ä½å¼å§å°åºä½ç»æ对åºçä»å·¦å°å³ï¼æ°æ®ä»ä½å°åå°é«å°å对åºçä»ä¸å°ä¸ãä¸ä¸ªåèå¯ä»¥è¡¨ç¤º8个åç´ ï¼ä¸è¶³çé¨åå¯ä»¥ç¨0è¡¥é½ã
ä¸é¢æ¯ä¸å¼ 太é³çå¾çï¼ä» ä¾åèã
0x00,0x00,//Unknown or reserved,maybe the mark for the wbmp
0x14,//Width
0x14,//Height
//Pixel data
0xfa,0xf5,0xf0,0xfb,0x6d,0xf0,0xfb,0xad,0xf0,0xfb,
0xdd,0x80,0x1b,0xfc,0x70,0xe7,0x1f,0xe0,0x7c,0xe7,
0xd0,0xbb,0xfb,0xd0,0xdb,0xfb,0xb0,0xd7,0xfd,0x70,
0xb7,0xfd,0xb0,0x77,0xf5,0xd0,0xfb,0xeb,0xe0,0xfb,
0xdb,0xf0,0x1c,0xe7,0x80,0xc7,0x1c,0x70,0xf7,0xfd,
0xf0,0xf7,0xbf,0xf0,0xf6,0x5d,0xf0,0xf5,0xed,0xf0
å æ¤å¨ç¥éäºWBMPçæ ¼å¼åï¼å°±å¯ä»¥å¨WAP移å¨è®¾å¤ä¸ååºåç§å¾å½¢ï¼çè³æ¯ç»å¾ãæ¬æ¥WAPç»ç«¯è®¾å¤ä¸è¬æ¯ä¸æ¯æå¾å½¢æ¨¡å¼ï¼ä½æ¯å¯ä»¥å¨æå¡ç«¯å°ææçå¾å½¢æç §WBMPçæ ¼å¼åå¤å¥½åéå¾WAPç»ç«¯è®¾å¤ï¼é£ä¹çèµ·æ¥å°±å¥½è±¡å¨WAPç»ç«¯è®¾å¤ä¸ç´æ¥ç»å¾ã大家å¯ä»¥å» http://www.infoislive.com/demo ççã
使ç¨ASPå®ç°WML
<%@ Language=VBScript %>
<% Response.ContentType="text/vnd.wap.wml" %><?xml version="1.0" encoding="gb2312"?>
<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" "http://www.wapforum.org/DTD/wml_1.1.xml">
<wml>
   <card id="MainCard" title="Yestock">
          <p mode="nowrap">
          Yestock<br/>
          <select>
          <option onpick="http://202.96.168.13/wap/Chinese.wml"> ä¸æ </option>
          <option onpick="http://202.96.168.13/wap/English.wml">English</option>
          </select>
          </p>
   </card>
</wml>
注æï¼å¨ <% Response.ContentType=âtext/vnd.wap.wmlâ %> åé¢ä¸å®è¦ç´§æ¥ <?xml version=â1.0â encoding=âgb2312â?> ã两è é´ä¸è½æç©ºæ ¼åå车ãå¦åå¨ WinWAP ä¸å¯ä»¥æµè§ï¼ä½å¨ WAP 移å¨è®¾å¤ä¸å°±è¡ä¸éï¼
è§£å³ WAP ä¸æé®é¢
      WML æ¯ XML çä¸ç§åºç¨ï¼è XML ç缺çç¼ç æ¯ UTF-8 ï¼ä¹å°±æ¯ Unicode ç 8 ä½ç¼ç æ¹å¼ãå¦æä¸ç¹æ®è¯´æï¼é£ä¹ XML å°è®¤ä¸ºä½ éç¨çæ¯ UTF-8 çç¼ç æ¹å¼ãè¿å°±é æäºä¸ä¸ªé®é¢ï¼æ们éå¸¸ä½¿ç¨ GB2312 ç¼ç æ¹å¼ï¼å ä¹ææçææ¡£å 容é½éç¨äº GB2312 æ¹å¼ï¼æ°æ®åºä¸ä¹ä¸ä¾å¤ãè Unicode å GB2312 çç¼ç æå¾å¤§çä¸åï¼å¯ä»¥è¯´æ ¹æ¬ä¸ä¸æ ·ï¼è¿æ¯é æä¹±ç çåå ã
   任ä½ç¼ç æ¹å¼å æ¬ä»ä¹æ¥æï¼é©æï¼å¸è æï¼é¿æ伯æçé½è½è½»æ¾è½¬æ¢æ Unicode ï¼ä½ å¯ä»¥å¨åä¸æ®µææ¡£ä¸å å ¥ N ç§è¯è¨ãè½ç¶ç°æçåºç¨è½¯ä»¶å¾å°éç¨ Unicode ï¼ä½ Windows NT çå æ ¸å´éç¨ Unicode æ¥å¤çå符ã Unicode æ¹å¼æ两个å¸å¼äººç个æ§ï¼ç¬ç«ä¸å®½å®¹ã
   å¦ä½è§£å³è¿äºé®é¢ï¼ç°å¨ä¸»è¦æ以ä¸çå ç§æ¹æ³ï¼
       æ¹æ³ä¸ï¼ç´æ¥éç¨ UTF-8 ç¼ç
       æ¹æ³äºï¼ç´æ¥éç¨ GB2312 ç¼ç
       æ¹æ³ä¸ï¼éç¨å符转æ¢çæ¹å¼
       æ¹æ³åï¼é ç½®ä½ çåºç¨æå¡ç´æ¥è¾åº UTF-8 ç¼ç ( éç¨äº IIS)
ä¸é¢å ·ä½æ¥è®²ä¸ä¸è¿å ç§æ¹æ³ :
æ¹æ³ä¸ï¼ç´æ¥éç¨ UTF-8 ç¼ç
   è¿ç§æ¹æ³æ éå¤è®²ãå¦æä½ çå 容å¯ä»¥è½»æ转æ¢å° UTF-8 ç¼ç è¿éè¦ä»ä¹å¢ï¼
åå¤ï¼éè¦å¯¹ä½ çæå¡å å®¹å ¨é¢ç转æ¢ï¼èä¸ä¸ç°æç大å¤æ°åºç¨ä¸å ¼å®¹ã
æ¹æ³äºï¼ç´æ¥éç¨ GB2312 ç¼ç
   ä¹å¾ç®åï¼å¨ä½ çç¼ç 声ææ¶ï¼æ 注éç¨ GB2312 ç¼ç æ¹å¼ï¼å ·ä½åæ³å¦ä¸ï¼
   <?xml version="1.0" encoding="GB2312"?>
      Motorolar L2000www å Nokia 7110 é½æ¯æ该ç§æ¹å¼ ã
åå¤ï¼æäºç»ç«¯ä¸æ¯æ GB2312 ç¼ç ï¼ä»ç¶ä¼æä¹±ç ã
æ¹æ³ä¸ï¼éç¨å符转æ¢çæ¹å¼
   â 天下火力 â转æ¢æä¸æãå ¶ææ³æ¯ç¨ ASCII å符表ç°æ´å¤§å符éä¸çå符ãæ¯å¦ä½ è¦å±ç°å¸è æçå°åç alpha ã alpha å¨ Unicode çç¼ç ä¸æ¯ 945 ï¼ 16 è¿å¶å°±æ¯ 3B1 ï¼äºæ¯ä½ åä¸ â α âæè â α â æ¾ç¤ºçå°±æ¯å°åç alpha α ãä½ åªéè¦ç¥éæ±åç Unicode ç¼ç ï¼å°å ¶è½¬æ¢æâ &#xXXXX; âçå½¢å¼ãä½ åªè¦ç¨ ASCII ç¼ç æ¹å¼å°±è¡äºï¼ä»»ä½å¹³å°é½è½å¤çï¼èä¸ HTML ä¹æ¯æãæ¬æä¸èè²ç天ä¸ç«åå°±æ¯ç¨è¿ç§æ¹å¼åçãå¦æä½ çä¸å°ï¼è¡¨ç¤ºä½ çæµè§å¨ä¸æ¯æè¿ç§æ¹å¼ã
åå¤ï¼å¢å äºæ件é¿åº¦ï¼ä½¿å¾å¸¦å®½æ¬æ¥è¿ä¸é«çæ éäºè¿ç½æ´æ ¢ï¼ä¸è½ç´è§ççå°ä¸æï¼ä¸ä¸æä¸æåæä¸å ªè®¾æ³ã
æ¹æ³åï¼é ç½®ä½ çåºç¨æå¡ç´æ¥è¾åº UTF-8 ç¼ç ( éç¨äº IIS)
Â Â Â å¨ IIS ç Response Object æä¸ä¸ªå±æ§ CharSet, æ微软ç说æ³åªè¦è¿ä¹åå°±è¡ï¼
   <% Response.Charset("UTF-8") %>
åå¤ï¼è¿ç§æ¹æ³ï¼åªéç¨äº Windows NT ä¸ IIS ç ASP ç¼ç¨ãå ¶ä»çå¹³å°å Web Server æ没æå¦æ¤ç®åçæ¹å¼ã
WML æ è®°çéæ¥è¡¨
| |||||||||||||||||||||||||||
| |||||||||||||||||||||||||||
| |||||||||||||||||||||||||||
| |||||||||||||||||||||||||||
| |||||||||||||||||||||||||||
| |||||||||||||||||||||||||||
| |||||||||||||||||||||||||||
| |||||||||||||||||||||||||||
| |||||||||||||||||||||||||||
|
Â