最新的Web開發教程
 

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>
試一試»
屬性 描述 解釋
appml控制器 定義一個AppML控制器 AppML控制器
appml數據 定義了數據源用於應用 AppML數據
appml,包括HTML的 定義HTML被列入 AppML包括
appml重複 定義要重複的HTML元素 AppML HOWTO

AppML消息

function myController($appml) {
    if ($appml.message == "display") {
        if ($appml.display.name == "CustomerName") {
            $appml.display.value = $appml.display.value.toUpperCase();
        }
    }
}
試一試»
信息 發送
準備 AppML後啟動,並準備加載數據。
AppML滿載後,準備顯示數據。
顯示 之前AppML顯示的數據項。
DONE AppML完成後(finished displaying)
提交 之前AppML提交數據。
錯誤 之後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;
        }
}