this.$alert中使用html不生效
时间: 2023-11-17 19:08:17 浏览: 87
这个问题可能是因为在使用 `this.$alert` 方法时,没有正确地设置 `type` 属性。默认情况下,`this.$alert` 的 `type` 属性是 `'info'`,这意味着它会对传入的内容进行转义,从而防止 XSS 攻击。
如果你想要在 `this.$alert` 中使用 HTML,你需要将 `type` 属性设置为 `'danger'` 或者 `'warning'`,这样就可以显示传入的 HTML 内容了。
例如,下面的代码会在弹出框中显示 `<strong>Hello World</strong>`,而不是转义后的文本:
```javascript
this.$alert('<strong>Hello World</strong>', {
type: 'danger'
});
```
希望这个回答能够帮到你!
相关问题
在html中vue.js this.$message失效
在 HTML 中使用 Vue.js 的 `this.$message` 方法是无效的,因为 `this` 关键字只能在 Vue 实例内部使用。
如果你想在 HTML 中显示消息,可以考虑使用其他的 JavaScript 库,例如 `sweetalert2` 或 `toastr`。这些库可以让你创建漂亮的消息提示框。
另外,如果你想在 Vue 组件中使用 `this.$message`,你需要确保在组件中正确引入了 `ElementUI` 库,并且在 `Vue.use(ElementUI)` 调用后,`this.$message` 才会生效。例如:
```javascript
import ElementUI from 'element-ui';
import 'element-ui/lib/theme-chalk/index.css';
Vue.use(ElementUI);
export default {
methods: {
showMessage() {
this.$message({
message: 'Hello world',
type: 'success',
});
},
},
};
```
如何设置表单的失效时间大于生效时间
设置表单的失效时间大于生效时间,可以通过以下步骤实现:
1. 在表单中添加两个时间选择器,分别用于设置生效时间和失效时间。
2. 在 Vue 组件中,使用 `v-model` 指令绑定生效时间和失效时间的变量,可以使用 JavaScript 的 `Date` 对象或者时间戳来表示时间。
```html
<template>
<div>
<label>生效时间:</label>
<el-date-picker v-model="startTime"></el-date-picker>
<label>失效时间:</label>
<el-date-picker v-model="endTime"></el-date-picker>
</div>
</template>
<script>
export default {
data() {
return {
startTime: new Date(),
endTime: new Date()
}
}
}
</script>
```
3. 在提交表单时,判断失效时间是否大于生效时间。如果是,则可以继续提交,否则可以给出提示。
```html
<template>
<div>
<label>生效时间:</label>
<el-date-picker v-model="startTime"></el-date-picker>
<label>失效时间:</label>
<el-date-picker v-model="endTime"></el-date-picker>
<button @click="submitForm">提交</button>
</div>
</template>
<script>
export default {
data() {
return {
startTime: new Date(),
endTime: new Date()
}
},
methods: {
submitForm() {
if (this.endTime > this.startTime) {
// 可以提交表单
// ...
} else {
// 失效时间必须大于生效时间
alert('失效时间必须大于生效时间')
}
}
}
}
</script>
```
这样设置表单的失效时间大于生效时间就完成了。在实际项目中,还可以根据需要设置其他的表单验证规则。
阅读全文