moodle中文API之表单API
来源:互联网 发布:软件企业简介 编辑:程序博客网 时间:2024/04/25 16:08
Form API
表单API
目录
1.概述
2.亮点
3.用法
4.表单元素
4.1 基本表单元素
4.2 定制表单元素
5.常用函数
5.1 add_action_buttons($cancel =true,$submitlabel =null)
5.2 setDefault()
5.3 disableif()
5.4 addRule()
5.5 setHelpButton
5.6 addHelpButton
5.7 setType()
5.8 disable_form_change_checker()
1.概述
WEB表单在Moodle中创建是使用Form API。Form API支持所有的html表单元素(checkbox/radio/textbox 等等),而且引入安全检查。
2.亮点
1. 支持拖拽
2. 较少使用表格布局.
3. 表当数据安全, 通过携带必须的参数,可选的session key.
4. 支持客户端有效性检查
5. 可以在表单元素里添加Moodle帮助按钮.
6. 支持文件库
7. 支持许多定制的moodle特定的与非特定的表单元素。
8. 可添加重复元素.
9. 按组添加表单元素
3.用法
在 moodle中创建一个表单, 你需要创建一个class 继承自 moodleform class 而且还要重写 definition方法来包含你要创建的表单元素。
//moodleform 类定义在 formslib.php文件中require_once("$CFG->libdir/formslib.php"); class simplehtml_form extends moodleform { //为form添加元素 public function definition() { global $CFG; $mform = $this->_form; //别忘了下划线 $mform->addElement('text', 'email', get_string('email')); // 添加元素到你的表单 $mform->setType('email', PARAM_NOTAGS); //设置元素类型 $mform->setDefault('email', 'Please enter email'); //设置元素默认值 ... } //定制有效性检查可以放在这个函数里 function validation($data, $files) { return array(); }}
然后初始化 form (这个例子是初始化 simplehtml_form)在你要添加表单的页面里。
//首先包含 simplehtml_form.php 文件require_once('PATH_TO/simplehtml_form.php'); //然后实例化simplehtml_form $mform = new simplehtml_form(); //Form程序处理和显示放在这里if ($mform->is_cancelled()) { //处理取消表单操作(如果有取消按钮的话)} else if ($fromform = $mform->get_data()) { //I这里可以进行数据有效性检查 $mform->get_data() 返回表单传递过来的数据.} else { // 这个分支是表单初始化或者如果表单提交后数据不合法,那么表单就得重新显示 //设置默认数据 如果存在的话 $mform->set_data($toform); //显示表单 $mform->display();}
4.表单元素
4.1 基本表单元素
1. button 普通按钮
2. checkbox 复选框
3. radio 单选框
4. select 下拉列表
5. multi-select 多选下拉列表
6. password 密码框
7. hidden 隐藏表单元素
8. html - div元素
9. static - 显示一个静态的文本.
10. text - 文本框
11. textarea - 文本域
4.2 定制表单元素
1. advcheckbox - Advance checkbox
2. passwordunmask - 密码元素是可选将密码显示成普通文本.
3. recaptcha - 验证码
4. selectyesno - 是否选择框
5. selectwithlink - 带链接的下拉选择框
6. date_selector 日期选择器
7. date_time_selector 日期时间选择器
8. duration 持续时间
9. editor 富文本编辑器
10. filepicker - 上传单个文件
11. filemanager - 上传多个文件
12. tags - 标记
13. addGroup - 添加到组
14. modgrade - 模块分数
15. modvisible - 模块可见性
16. choosecoursefile - 选择课程文件
17. grading - 等级
18. questioncategory - 问题类型
5.常用函数
5.1 add_action_buttons($cancel =true,$submitlabel =null)
添加动作按钮,第一个参数是要不要添加取消按钮,第二个参数是提交按钮的文本信息是什么可用函数is get_string('savechanges'). 获得,最贱的的默认如下:
$this->add_action_buttons();
5.2 setDefault()
为单个元素设置默认值
5.3 disableif()
在这里添加条件隐藏某些不满足显示条件的表单元素或组。
5.4 addRule()
为 server/client 添加有效性检查规则. 像文本框类型为email的时候.
5.5 setHelpButton()
为表单元素设置一个弹出的帮助信息
5.6 addHelpButton()
添加上面设置好的帮助信息。
5.7 setType()
PARAM_* 提交时会检查的特殊变量类型.
5.8 disable_form_change_checker()
默认情况下, 任何 Moodle 表单江会弹出"你确定提交?" 的警告框,如果你想做些改变然后尝试离开这个页面不做保存. 偶尔,这是不希望看到的 这种情况下你可以调用
$mform->disable_form_change_checker().
由于时间精力有限,没有细化的查出每个函数及表单元素的使用方法,但是,相关使用方法可以点击对应文字连接到官方对应说明文档中查找。
- moodle中文API之表单API
- Moodle 中文 API 之 权限管理API
- Moodle 中文 API 之 数据管理API
- Moodle 中文 API 之 文件管理API
- Moodle中文API之导航API
- Moodle中文API之导航API
- moodle中文API
- Moodle 中文API之 全局输出API(一)
- Moodle 中文API之 全局输出API(二)
- jQuery-Validate表单验证中文API
- jquery.validate.js表单验证+中文api
- moodle的一些api翻译~$page翻译
- Android中文API之GridView
- android中文API之Message
- 中文API
- 中文API
- h5 form api 表单API
- jQuery EasyUI API 中文文档 - 表单(form)
- 近期感悟
- android判断某个应用或者activity是否在运行
- ubuntu 编译C++
- hadoop fs {args}、hadoop dfs {args}、hdfs dfs {args}三者的区别
- aix 物理网卡信息
- moodle中文API之表单API
- Java语言面向对象总结
- VS2010断点调试技巧
- iOS 进阶知识(框架)
- MFC中用到的c++基本数据类型
- 机器学习:回归 梯度下降法
- PHP把excel(xls)文件数据导入mysql数据库
- Quick cocos2dx-Lua(V3.3R1)学习笔记(6)---- 让精灵执行不同的动作
- 单词数