单行文本框 jtbc-input
此组件属于 自定义内置元素 ,这里只介绍自定义属性用法。
基础用法
最简单的文本标签:
<input is="jtbc-input" type="text">
当 width 设置为 100%:
当 width 设置为 180px:
当 width 设置为 180:
<input is="jtbc-input" type="text" width="100%"><input is="jtbc-input" type="text" width="180px"><input is="jtbc-input" type="text" width="100">
只读和禁用
文本框只读:
文本框禁用:
<input is="jtbc-input" type="text" status="readonly"" value="只读"><input is="jtbc-input" type="text" value="只读" readonly><input is="jtbc-input" type="text" status="disabled"" value="禁用"><input is="jtbc-input" type="text" value="禁用" disabled>
其他状态
选中状态 selected,这个需要 input 的 type 属性为 checkbox 或 radio多选框选中状态:
单选框选中状态:
<input is="jtbc-input" type="checkbox" selected="true""><input is="jtbc-input" type="radio" selected="true">
按钮文本输入框
基础用法
这是一个短信、邮件验证码接收输入框,需要配合后端来使用,这里只展示静态部分。带按钮的文本输入框:
换个按钮颜色:
换个按钮文字颜色:
<jtbc-field-input-with-button text="获取验证码" placeholder="请输入手机号" text-countdown="秒" countdown="120"></jtbc-field-input-with-button><jtbc-field-input-with-button text="获取验证码" placeholder="请输入邮箱" style="--button-background: #2a80eb;"></jtbc-field-input-with-button><jtbc-field-input-with-button text="获取验证码" placeholder="请输入邮箱" style="--button-color: red;"></jtbc-field-input-with-button>
text: 按钮显示的文字
text-countdown: 倒计时时显示的文字
countdown: 倒计时,时长。一般取 60 或者 90,也可根据实际情况来定。
部分代码逻辑
这里需要监听组件的 buttonClicked 事件,以此向后端请求,发短信或邮件验证码。然后,根据后端返回的状态,判断是否开启倒计时。
开启倒计时,调用组件的 enableButton 方法即可
const jtbcFieldInputWithButton = document.querySelector('jtbc-field-input-with-button');
if (jtbcFieldInputWithButton != null)
{
// 监听组件按钮点击事件
jtbcFieldInputWithButton.addEventListener('buttonClicked', e => {
// 判断用户输入的手机号或者邮箱格式是否正确,正确后请求后端,省略这部分逻辑...
jtbcFieldInputWithButton.enableButton(); // 根据后端返回判断是否开启倒计时,即调用 enableButton 方法
})
}
其他属性
禁用(disabled)、宽度(width) 这两个用法和上面“单行文本框”用法相同。下拉框文本输入框
基础用法
带下拉框的文本输入框:
<jtbc-field-input-with-datalist data="[{"value": "1", "text":"选项一"},{"value": "2", "text":"选项二"}]" placeholder="请选择"></jtbc-field-input-with-datalist>
data: 是一个 json 格式的字符串。例如:[{"value": "1", "text":"选项一"},{"value": "2", "text":"选项二"}] 。
其他属性
禁用(disabled)、宽度(width) 这两个用法和上面“单行文本框”用法相同。
图标文本输入框
只用于文本框和密码框,即 type: text/password, 默认值:text 。基础用法
全部默认属性值:
图标放右侧:
换个图标:
换个图标颜色:
<jtbc-field-input-with-icon></jtbc-field-input-with-icon><jtbc-field-input-with-icon position="right" placeholder="图标放右侧"></jtbc-field-input-with-icon><jtbc-field-input-with-icon icon="avatar"></jtbc-field-input-with-icon><jtbc-field-input-with-icon icon="avatar" style="--icon-color: #2a80eb;"></jtbc-field-input-with-icon>
图标查询:J5 内置图标
其他属性
禁用(disabled)、宽度(width) 这两个用法和上面“单行文本框”用法相同。
选项文本输入框
基础用法
默认样式:
放到右侧:
combine 模式:
<jtbc-field-input-with-select data="[{"value": "1", "text":"选项一"},{"value": "2", "text":"选项二"}]" placeholder="请输入选项值"></jtbc-field-input-with-select><jtbc-field-input-with-select position="right" data="[{"value": "1", "text":"选项一"},{"value": "2", "text":"选项二"}]" placeholder="图标放右侧"></jtbc-field-input-with-select><jtbc-field-input-with-select mode="combine" data="[{"value": "1", "text":"选项一"},{"value": "2", "text":"选项二"}]"></jtbc-field-input-with-select>
mode:属性有两个值 json(默认) | combine 。
区别是返回值的格式不同:
- json 返回的是 json 格式的字符串, {"select": "1", "value":"输入的值"}
- combine 返回的是“选项值” 和 "输入值" 的拼接字符串, "1输入的值"
其他属性
禁用(disabled)、宽度(width) 这两个用法和上面“单行文本框”用法相同。
文字说明文本框
基础用法
默认样式:
加上文字说明:
放到左侧:
combine 模式:
<jtbc-field-input-with-text></jtbc-field-input-with-text><jtbc-field-input-with-text text="元"></jtbc-field-input-with-text><jtbc-field-input-with-text position="left" text="元" placeholder="放左侧"></jtbc-field-input-with-text><jtbc-field-input-with-text mode="combine" text="元"></jtbc-field-input-with-text>
mode:属性有两个值 readonly (默认) | combine 。
区别是返回值的不同:
- readonly 返回值只返回输入的值
- combine 返回的是“说明文字” 和 "输入值" 的拼接字符串, "输入的值元"
其他属性
禁用(disabled)、宽度(width) 这两个用法和上面“单行文本框”用法相同。