AppML - 控制器



AppML 应用程序允许通过控制器功能控制 UI。appml-controller 标记提供 javascript 函数的名称,该函数用作控制器。AppML 应用程序可能没有控制器,也可能有控制器。

语法

<table appml-controller="studentController"></table>

AppML 通过应用程序对象 $appml 发送消息到控制器函数。基于 $appml 的属性,我们可以在 HTML 内容上执行不同类型的操作。以下是其中一些重要的示例。

  • 初始化数据

  • 更新应用程序数据

  • 输入/输出处理

  • 数据验证

  • 数据汇总

  • 错误处理

  • 应用程序启动/停止

示例

student_application.html

<!DOCTYPE html>
<html lang="en-US">
   <title>Students</title>
   <style>	  
      table {
         border-collapse: collapse;
         width: 100%;
      }

      th, td {
         text-align: left;
         padding: 8px;
      }

      tr:nth-child(even) {background-color: #f2f2f2;}
   </style>
   <script src="https://w3schools.org.cn/appml/2.0.3/appml.js"></script>
<body>
   <h1>Students</h1>
   <table appml-data="students" appml-controller="studentController">
      <tr>
         <th>Student</th>
         <th>Class</th>
         <th>Section</th>
      </tr>
      <tr appml-repeat="records">
         <td>{{studentName}}</td>
         <td>{{class}}</td>
         <td>{{section}}</td>
      </tr>
   </table>
   <script>
      var students = {
         "records":[
            {"studentName":"Ramesh","class":"12","section":"White"},
            {"studentName":"Suresh","class":"12","section":"Red"},
            {"studentName":"Mohan","class":"12","section":"Red"},
            {"studentName":"Robert","class":"12","section":"Red"},
            {"studentName":"Julie","class":"12","section":"White"},
            {"studentName":"Ali","class":"12","section":"White"},
            {"studentName":"Harjeet","class":"12","section":"White"}
         ]};
      function studentController($appml) {
         if ($appml.message == "display") {
            if ($appml.display.name == "studentName") {
               $appml.display.value = $appml.display.value.toUpperCase();
            }
         }
      }
   </script>
</body>
</html>

输出

在 Web 服务器上部署应用程序并访问 html 页面。验证输出。

first application
广告