<el-select v-model="queueNameDoc" placeholder="队列名称说明" filterable allow-create clearable style="width: 350px; margin: 10px" @change="handleQueueChange"> <el-option v-for="item in queueNameList" :key="item.value" :label="item.desc" :value="item.value"> </el-option> </el-select> 请对这个下拉框的内容进行监视,选中时跳转到某个网址,且网址和选中的内容有关
时间: 2024-02-10 21:34:50 浏览: 94
可以使用 `watch` 监听 `queueNameDoc` 的变化,然后在回调函数里根据选中的内容拼接出对应的网址,最后使用 `window.location.href` 跳转到该网址。示例代码如下:
```
watch: {
queueNameDoc: function(val) {
// 根据选中的内容拼接出对应的网址
let url = 'https://www.example.com/' + val;
// 跳转到该网址
window.location.href = url;
}
}
```
相关问题
在这个组件里 <el-dialog :visible.sync="showQueueDesc"> <el-form-item label="<span style='color:black'>提示:可右键点击下方队列名直接跳转</span>"></el-form-item> <el-select v-model="serverIp" placeholder="请选择机器ip(必填)" filterable allow-create clearable style="width: 220px; margin: 10px"> <el-option v-for="item in serverIpList" :key="item.value" :label="'server ip: ' + item.desc" :value="item.value"> </el-option> </el-select> <el-select v-model="queueNameDoc" placeholder="队列名称选择(必填)" filterable allow-create clearable style="width: 350px; margin: 10px"> <el-option v-for="item in queueNameDocList" :key="item.value" :label="item.desc" :value="item.value"> </el-option> </el-select> <div slot="footer"> <el-button @click="showQueueDesc = false">取消</el-button> <el-button type="primary" @click="openLink">确认</el-button> </div> </el-dialog> 为什么我el-form-item label这行字显示不出来
可能是因为你没有在 `el-dialog` 的 `el-form` 标签内添加 `el-form-item` 标签,你可以尝试以下代码:
```html
<el-dialog :visible.sync="showQueueDesc">
<el-form>
<el-form-item label="<span style='color:black'>提示:可右键点击下方队列名直接跳转</span>">
</el-form-item>
<el-select v-model="serverIp" placeholder="请选择机器ip(必填)"
filterable allow-create clearable
style="width: 220px; margin: 10px">
<el-option
v-for="item in serverIpList"
:key="item.value"
:label="'server ip: ' + item.desc"
:value="item.value">
</el-option>
</el-select>
<el-select v-model="queueNameDoc" placeholder="队列名称选择(必填)"
filterable allow-create clearable
style="width: 350px; margin: 10px">
<el-option
v-for="item in queueNameDocList"
:key="item.value"
:label="item.desc"
:value="item.value">
</el-option>
</el-select>
<div slot="footer">
<el-button @click="showQueueDesc = false">取消</el-button>
<el-button type="primary" @click="openLink">确认</el-button>
</div>
</el-form>
</el-dialog>
```
这里我将 `el-form-item` 标签放在了 `el-form` 标签内,并且添加了缺失的 `el-form` 标签。
你确定吗 为什么我加了width和height大小没有变 <el-dialog :visible.sync="showQueueSort" :width="20" :height="'10px'"> <el-select v-model="queueSort" placeholder="队列排序方式" filterable allow-create clearable style="width: 220px; margin: 10px"> <el-option v-for="item in queueSortList" :key="item.value" :label="item.desc" :value="item.value"> </el-option> </el-select> <div slot="footer"> <el-button @click="showQueueSort = false">取消</el-button> <el-button type="primary" @click="goQueueSort">确认</el-button> </div> </el-dialog>
对不起,我的上一个回答是错误的。在`el-dialog`组件中,`width`和`height`属性需要设置成字符串类型的值,例如`width="20%"`或`height="10px"`,否则可能不会生效。
另外,`width`和`height`属性的值也可以设置成一个大于等于1的数字,代表对话框的宽度或高度以像素为单位。但是需要注意,如果设置的值过小,则可能会导致对话框内容显示不完整。
下面是一个使用字符串类型值设置`width`和`height`属性的例子:
```html
<el-dialog
:visible.sync="showQueueSort"
width="50%"
height="300px"
>
<!-- 对话框内容 -->
</el-dialog>
```
在这个例子中,对话框的宽度被设置为页面宽度的50%,高度被设置为300像素。
阅读全文