AppML 参考手册
AppML HTML 属性
实例
<div appml-include-html="inc_header.htm"></div>
<h1>Customers</h1>
<table
appml-data="customers.js" appml-controller="myController">
<tr>
<th>Customer</th>
<th>City</th>
<th>Country</th>
</tr>
<tr appml-repeat="records">
<td>{{CustomerName}}</td>
<td>{{City}}</td>
<td>{{Country}}</td>
</tr>
</table>
<div appml-include-html="inc_footer.htm"></div>
亲自试一试 »
属性 | 描述 | Explained |
---|---|---|
appml-controller | 定义一个 AppML 控制器 | AppML 控制器 |
appml-data | 定义应用程序的数据源 | AppML 数据 |
appml-include-html | 定义要包含的 HTML | AppML 包含 |
appml-repeat | 定义要重复的 HTML 元素 | AppML 方法 |
AppML 消息
实例
function myController($appml) {
if ($appml.message == "display") {
if ($appml.display.name == "CustomerName") {
$appml.display.value = $appml.display.value.toUpperCase();
}
}
}
亲自试一试 »
消息 | Sent |
---|---|
ready | AppML 启动后,准备加载数据。 |
loaded | AppML 完全加载后,就可以显示数据了。 |
display | 在 AppML 显示数据项之前。 |
done | AppML 完成后(显示完毕)。 |
submit | 在 AppML 提交数据之前。 |
error | AppML 遇到错误后。 |
AppML 消息在AppML 消息一章中解释。
AppML 模型
实例
{
"security": "admin",
"rowsperpage" : 10,
"database": {
"connection": "mysql",
"sql" : "SELECT * FROM Customers",
"orderby" : "CustomerName"}},
"filteritems" : [
{"item" : "CustomerName", "label" : "Customer"},
{"item" : "City"},
{"item" : "Country"}],
"sortitems" : [
{"item" : "CustomerName", "label" : "Customer"},
{"item" : "City"},
{"item" : "Country"}]
}
AppML 模型属性
元素 | 描述 |
---|---|
"data" | 为模型定义平面文件源 |
"database" | 为模型定义一个数据库源 |
"filteritems" | 定义过滤器限制 |
"rowsperpage" | 定义每页要获取的行数 |
"security" | 定义模型的安全性 |
"sortitems" | 定义排序限制 |
应用安全
您必须以"admin"组的成员身份登录,才能访问此应用程序:
实例
{
"security": "admin",
"database": {
"connection": "mysql",
"sql" : "SELECT * FROM Customers",
"orderby" : "CustomerName"}
}
私有模型
您可以将自己的私有数据添加到模型中。
此示例建议对数据进行限制:
实例
"restrictions" : {
"fname" : {"maxlength": 40},
"price" : {"max": 999,"min": 100}
}
模型数据可供服务器应用程序和您的 AppML 控制器使用。
此示例使用模型数据来验证输入:
实例
function myController($appml) {
if ($appml.message == "submit") {
var price = document.getElementById("price").value;
if (price < $appml.model.restrictions.price.min) {
$appml.displayError(15, "Price
too low!");
return;
}
}