Element中el-form表單舉例詳解
1. 前言
表單是使用頻率非常高的組件了,HTML默認提供的表單是沒啥樣式的,而Element對表單提供了封裝形成了el-form組件,使整個表單的樣式整齊劃一。
本篇就來介紹下表單的使用,主要介紹的是樣式方面的使用。
2. 基本用法
代碼:
基本用法:
<el-form ref="form" label-width="80px" style="border:1px solid #C4E1C5;padding:20px;">
<el-form-item label="姓名">
<el-input v-model="user.name"></el-input>
</el-form-item>
<el-form-item label="班級">
<el-select v-model="user.classId">
<el-option label="1班" value="1001"></el-option>
<el-option label="2班" value="1002"></el-option>
</el-select>
</el-form-item>
<el-form-item label="出生日期">
<el-date-picker type="date" placeholder="選擇日期" v-model="user.date"></el-date-picker>
</el-form-item>
<el-form-item label="性別">
<el-radio-group v-model="user.sex">
<el-radio label="男" value="male"></el-radio>
<el-radio label="女" value="female"></el-radio>
</el-radio-group>
</el-form-item>
<el-form-item label="自我介紹">
<el-input type="textarea" v-model="user.desc"></el-input>
</el-form-item>
<el-form-item>
<el-button type="primary">提交</el-button>
<el-button>取消</el-button>
</el-form-item>
</el-form>
需要用el-form標簽將表單控件包裹起來,每個控件使用el-form-item標簽包裹起來,這樣產(chǎn)生的表單就會比較整齊。

3. 行內(nèi)表單
有時候希望將表單的控件盡量顯示到一行,以節(jié)約空間,借助inline屬性即可實現(xiàn)。
行內(nèi)表單:
<el-form ref="form" label-width="80px" :inline="true" style="border:1px solid #C4E1C5;padding:20px;">
<el-form-item label="姓名">
<el-input v-model="user.name"></el-input>
</el-form-item>
<el-form-item label="選擇班級">
<el-select v-model="user.classId">
<el-option label="1班" value="1001"></el-option>
<el-option label="2班" value="1002"></el-option>
</el-select>
</el-form-item>
<el-form-item>
<el-button type="primary">提交</el-button>
<el-button>取消</el-button>
</el-form-item>
</el-form>
效果如下:

4. 標簽對齊方式
可以統(tǒng)一控制表單控件標簽文本的對齊方式,包括左對齊、右對齊、頂部對齊,通過將label-position屬性值設(shè)置為left/right/top即可實現(xiàn),具體效果如下:

5. 調(diào)整尺寸
可以通過為表單設(shè)置size屬性,一次性設(shè)置表單內(nèi)所有控件的屬性,size可取值為medium / small / mini。
如下代碼:
調(diào)整尺寸:
<el-form ref="form" label-width="80px" size="mini" style="border:1px solid #C4E1C5;padding:20px;">
<el-form-item label="姓名">
<el-input v-model="user.name"></el-input>
</el-form-item>
<el-form-item label="選擇班級">
<el-select v-model="user.classId">
<el-option label="1班" value="1001"></el-option>
<el-option label="2班" value="1002"></el-option>
</el-select>
</el-form-item>
<el-form-item>
<el-button type="primary">提交</el-button>
<el-button>取消</el-button>
</el-form-item>
</el-form>
效果如下,與正常尺寸相比,控件都變小了。

6. 小結(jié)
el-form除了提供樣式方面的功能,也提供了校驗方面的功能,我個人還是比較喜歡使用JS代碼進行校驗,所以此處不再介紹,感興趣的可以去官網(wǎng)查看文檔。
補充知識:表單的重置清除和觸發(fā)
- resetFields方法:可移除校驗結(jié)果并重置字段值(注:清除表單項name的校驗及數(shù)值)
- clearValidate方法:只能移除校驗結(jié)果,不能重置字段值(注:只清除表單項name的校驗,不清除表單項name的數(shù)值)
//重置整個表單
this.$refs['ruleForm'].resetFields();
//清除整個表單
this.$refs['ruleForm'].clearValidate();
//清除特定屬性
this.$refs['ruleForm'].clearValidate('name');
validateField()方法:觸發(fā)表單中某一個校驗
//觸發(fā)單個表單驗證
this.$refs.form.validateField('propName')
//element官網(wǎng) 觸發(fā)一個表單的驗證
this.$refs[formName].validate((valid) => {
if (valid) {
alert('submit!');
} else {
console.log('error submit!!');
return false;
}
});
到此這篇關(guān)于Element中el-form表單舉例詳解的文章就介紹到這了,更多相關(guān)Element el-form表單內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Vue使用echarts散點圖在區(qū)域內(nèi)標點
這篇文章主要為大家詳細介紹了Vue使用echarts散點圖在區(qū)域內(nèi)標點,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下2022-03-03
vue監(jiān)聽路由變化時watch方法會執(zhí)行多次的原因及解決
這篇文章主要介紹了vue監(jiān)聽路由變化時watch方法會執(zhí)行多次的原因及解決,幫助大家更好的理解和學(xué)習(xí)使用vue框架,感興趣的朋友可以了解下2021-04-04

