XNML_String对象
目录 |
由XNJS提供的用来表示一段XNML片段内容的安全的JavaScript对象。
在XNJS中,当需要把一段XNML片段通过节点对象的setInnerXNML设置为元素内容的时候,或者用XNML片段装饰Dialog的时候,出于安全性的考虑,XNJS并不允许直接将一段XNML片段作为字符串的形式传给相应的函数。XNJS的做法是先创建一个XNJS_Strng对象来表示XNML片段,然后将这个XNJS_Strng对象传给相应的函数。
开发者不允许直接使用JavaScript代码来创建XNJS_Strng对象,而是通过XNML的xn:js-string标签来创建;或者,通过Ajax的应答也可以得到一个XNJS_Strng对象。
在目前的XNJS的实现中,XNML_String对象有两个应用场景:
setInnerXNML用于将当前XNJS DOM节点的内容设置为XNML_String对象表示的一段XNML片段。详见setInnerXNML。
XNJS提供的PANEL型对话框,可以将标题、主体以及对话框底部内容设置成XNML片段,便于开发者灵活地定制对话框。由于同样的安全性原因,PANEL型对话框的构造函数和定制函数也需要将XNML片段用XNML_String对象来传入。对话框可以使用XNML_String对象作为参数的定制函数如下表列出。详细信息参见Dialog。
在目前的XNJS的实现中,创建XNML_String对象有两种方式:
|
创建方式 |
描述 |
|
由<xn:js-string>标签创建 |
<xn:js-string>标签的var属性定义一个XNML_String类型的变量名,<xn:js-string>标签所嵌套的XNML片段成为这个变量的值。详见xn:js-string。 |
|
由Ajax API创建 |
当使用XNML或JSON应答类型的Ajax对象时,会有机会创建XNML_String对象并通过参数传给Ajax对象的ondone函数(开发者定义的callback函数)。详见Ajax。 |
有关XNML_String对象示例参见xn:js-string、Ajax、setInnerXNML和Dialog。