<el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
<el-form :model="dailypriceForm" ref="dailypriceForm" label-width="100px">
<el-row>
<el-col :span="12" v-for="(dailypriceContent, index) in dailypriceForm.dailypriceContents" :key="index">
<el-form-item :label="dailypriceContent.name" :prop="`dailypriceContents[${index}].price`"
:rules="dynamicRules(index)">
<el-input v-model="dailypriceContent.price"></el-input>
</el-form-item>
</el-col>
</el-row>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitForm">确 定</el-button>
<el-button @click="cancel">取 消</el-button>
</div>
</el-dialog>
data() {
return {
dailypriceForm: {
dailypriceContents: [],
},
},
computed: {
dynamicRules() {
const validatePrice = (rule, value, callback) => {
const reg = /^\d+(\.\d+)?$/
var regex = /^\d+(\.\d{1,2})?$/;
if (!reg.test(value)) {
callback(new Error('请输入有效的参数'))
} else if (!regex.test(value)) {
callback(new Error('只填写到小数点后两位'))
} else {
callback()
}
}
return (index) => {
return [{
required: true,
message: '这是必填项',
trigger: 'blur'
}, {validator: validatePrice, trigger: 'blur'}];
};
},
},
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/188052.html