| getstring()的函数,如下:
function getstring(instring)
temp=selectednode._
selectSingleNode _
(instring).text
getstring= _
server.htmlencode(temp)
end function
getstring()函数的输入值是元素名,元素值要从XML文档中取回。比如,将"firstname"传递给getstring(), getstring函数就选择firstname元素并返回它的文本数值。为保险起见,在返回给调用者前,我们使用ASP的 server.htmlencode方法转换文本为合法的HTML代码。在ASP页面中,调用代码类似如下:
<td>
<%=getstring("firstname")%>:
</td>
假如选择了XML文档的English部分,HTML输出结果如下:
<td>First name:v/td>
假如选择了French,HTML输出结果如下:
<td>Prénom:</td>
下图显示了French语言版本的表单:
选择可用语言 XML的一大优势就是它是以清楚的文本格式保存,我们能够在任何时候更新Web服务器上的XML文件。而且,我们还可以 将English版本的xmltrans.xml文件在XML编辑器XML NotHPad中打开,复制一份,然后将其中文字翻译为一种新语言。下图 显示了XML Notepad中的例程文件:
上图中,在左边可以执行添加、删除以及选择元素和属性的操作,在右边可以编辑相关内容。当站点需要多种语言版 本时,只需要在内容中执行粘贴操作,然后上载最新的XML文档就可以了。
为了使添加的语言立即生效,要增加一个程序,用它判定文件中不同语言的种类数量,并返回语言代码和语言名称。 如下面的代码段所示,我们可以将数据格式化处理以创建一个HTML列表框。当用户提交表单时,2字母表示的语言种类代码 被存储到ASP会话变量choselang中。
<select name="chosenlang">
<%
for i=0 to selectednodes.length - 1
response.write "<option value=" & _
chr(34) & _
selectednodes.item(i)._
selectSingleNode("lang").text & chr(34)
if (selectednodes.item(i)._
selectSingleNode("lang").text = _
session("chosenlang")) then
response.write " selected>"
else
response.write ">"
end if
response.write selectednodes.item(i)._
selectSingleNode("langname").text & _
"</option>" & vbcrlf
next
%></select>
添加提示信息以及字符集数据 上面使用XML提供了HTML表单的可变语言文字显示,接着还要考虑一些更丰富的用途。比如说,要在选择语言时添加一 个提示信息,只需要在文字前后嵌入HTML标记<LABEL>,并从XML中提供可变内容作为title属性值。同理,为了帮助浏览器 识别HTML页面的语言种类,将字符集信息保存到XML文件中,比如:
<charset>x-sjis</charset>
然后,就可以使用ASP将字符集类型插入到HTML流中:
|
| 共5页: 上一页 [1] [2] [3] 4 [5] 下一页 |
评论加载中…