# <stl:form> 表单
<stl:form
name="表单名称"
type="表单模板"
height="高度"
submitName="提交表单的JS函数名称"
onBeforeSend="提交表单发送前执行的JS代码"
onSuccess="提交表单成功后执行的JS代码"
onComplete="提交表单结束后执行的JS代码"
onError="提交表单失败后执行的JS代码"
successMessage="提交表单成功后显示的提示文字"
>
</stl:form>
# 说明
通过 stl:form 标签在模板中实现表单功能,如果 <stl:form>
包含内嵌标签,系统将以自定义样式显示表单,否则将采用 type
属性中设置的表单模板显示表单。
# 子标签
下表显示此标签所有的子标签。
子标签 | 说明 |
---|---|
stl:yes | 表单提交成功时的显示模板 |
stl:no | 表单提交失败时的显示模板 |
# 属性
属性 | 说明 |
---|---|
name | 表单名称 |
type | 表单模板 |
height | 高度 |
submitName | 提交表单的 JS 函数名称 |
onBeforeSend | 提交表单发送前执行的 JS 代码 |
onSuccess | 提交表单成功后执行的 JS 代码 |
onComplete | 提交表单结束后执行的 JS 代码 |
onError | 提交表单失败后执行的 JS 代码 |
successMessage | 提交表单成功后显示的提示文字 |
# name - 表单名称
表单名称是表单的标识,具有唯一性,如果不设置,默认为第一个表单的名称。
<stl:form name="表单名称"></stl:form>
# type - 表单模板
表单模板,如果不设置,默认为系统模板 submit
。
<stl:form type="submit"></stl:form>
# height - 高度
表单模板显示高度,如果不设置,系统将在表单载入后自动计算并调整高度。
# submitName - 提交表单的 JS 函数名称
提交表单的 JS 函数名称,默认为 formSubmit
。
# onBeforeSend - 提交表单发送前执行的 JS 代码
提交表单发送前执行的 JS 代码,可以在此验证表单格式。
onBeforeSend
可以为自定义函数,函数内返回 true
代表验证通过,系统将提交表单,返回 false
代表验证不通过,系统将不会提交表单。
# onSuccess - 提交表单成功后执行的 JS 代码
提交表单成功后执行的 JS 代码。
# onComplete - 提交表单结束后执行的 JS 代码
提交表单结束后执行的 JS 代码。
# onError - 提交表单失败后执行的 JS 代码
提交表单失败后执行的 JS 代码。
# successMessage - 提交表单成功后显示的提示文字
提交表单成功后显示的提示文字。
# 示例
# 使用系统模板显示提交表单
下面的例子使用系统模板显示 留言反馈
提交表单。
<stl:form name="留言反馈" type="submit"></stl:form>
# 使用系统模板显示表单数据
下面的例子使用系统模板显示 留言反馈
表单数据。
<stl:form name="留言反馈" type="list"></stl:form>
# 自定义表单提交样式
下面的例子显示自定义表单提交样式,使用 onBeforeSend
属性定义提交验证函数,并在函数内返回 true
。
<script>
function validateForm(data) {
var success = true;
$('#myForm input').removeClass('error');
$('#myForm textarea').removeClass('error');
if (!data['Name']) {
$('#myForm input[name="Name"]').addClass('error');
success = false;
}
if (!data['Mobile']) {
$('#myForm input[name="Mobile"]').addClass('error');
success = false;
}
if (!data['Email'] || !/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/.test(data['Email'])) {
$('#myForm input[name="Email"]').addClass('error');
success = false;
}
if (!data['Content']) {
$('#myForm textarea[name="Content"]').addClass('error');
success = false;
}
return success;
}
</script>
<stl:form name="留言反馈" id="myForm" onBeforeSend="validateForm">
<ul>
<li>
<span>姓名:</span>
<input type="text" name="Name" placeholder="请输入姓名">
</li>
<li>
<span>电话:</span>
<input type="text" name="Mobile" placeholder="请输入电话">
</li>
<li>
<span>Email:</span>
<input type="text" name="Email" placeholder="请输入Email">
</li>
<li>
<span>反馈内容:</span>
<textarea name="Content" placeholder="请输入反馈内容"></textarea>
</li>
</ul>
<div>
<button class="fnt_18" onclick="formSubmit()">提交</button>
</div>
</stl:form>