表单 el-form 中el-input 链接校验
时间: 2023-11-07 19:58:45 浏览: 169
你可以在 `el-input` 组件上使用 `type` 属性来指定输入框类型为 `url`,然后使用 `validator` 属性来自定义链接的校验规则。以下是一个示例代码:
```html
<el-form ref="form" :model="form">
<el-form-item label="链接">
<el-input v-model="form.url" type="url" :validator="validateUrl"></el-input>
</el-form-item>
</el-form>
```
```javascript
export default {
data() {
return {
form: {
url: ''
}
}
},
methods: {
validateUrl(rule, value, callback) {
if (!value) {
return callback(new Error('链接不能为空'));
}
const pattern = /^(https?|ftp):\/\/[^\s/$.?#].[^\s]*$/i;
if (!pattern.test(value)) {
callback(new Error('请输入有效链接'));
} else {
callback();
}
}
}
}
```
在上面的代码中,我们将 `el-input` 的 `type` 属性设置为 `url`,这样它会自动校验输入框中的内容是否符合 URL 的格式。然后我们使用 `validator` 属性来自定义校验规则,它接收三个参数:`rule` 表示校验规则,`value` 表示输入框中的值,`callback` 表示校验的结果。在 `validateUrl` 方法中,我们首先判断输入框是否为空,如果为空则返回一个错误。然后我们使用正则表达式来校验输入框中的值是否符合 URL 的格式,如果不符合则返回一个错误,否则返回校验成功的结果。
阅读全文