我的情況是這樣的如何在選擇vue.js中獲得價值? vue.js 2
我有這樣一個組件:
<template>
<div class="panel panel-default panel-filter">
...
<div id="collapse-location" class="collapse in">
<!-- province -->
<div style="margin-bottom: 10px">
<location-bs-select element-name="province_id" level="provinceList" type="1" module="searchByLocation"/>
</div>
<!-- city -->
<location-bs-select element-name="city_id" level="cityList" type="2" module="searchByLocation"/>
</div>
<!-- button search -->
<div class="panel-item">
<br>
<a href="javascript:;" class="btn btn-block btn-success" v-on:click="searchData">
Search
</a>
</div>
...
</div>
</template>
<script>
export default{
...
data() {
return{
...
province_id:'',
}
},
...
methods: {
...
searchData: function() {
console.log(this.province_id)
console.log(document.getElementsByName("province_id")[0].value)
console.log('testtt')
}
}
}
</script>
組件具有子組件,也就是位置-BS-選擇。用於顯示provincy和城市
組件孩子喜歡這個組件:
<template>
<select class="form-control" v-model="selected" :name="elementName" @change="changeLocation">
<template v-for="option in options">
<template>
<option v-bind:value="option.id" >{{ option.name }}</option>
</template>
</template>
</select>
</template>
<script>
export default{
props: ['elementName', 'level','type','module'],
...
};
</script>
如果我做檢查元素,結果是這樣的:
當點擊按鈕搜索,我想得到省和市的價值
我試試這樣的javascript:
console.log(document.getElementsByName("province_id")[0].value)
它的工作原理
但我想用VUE一步。我嘗試這樣的:
console.log(this.province_id)
它不工作
我怎樣才能解決呢?
你叫'這個地方.provinsi_id'?你的'selected'在哪裏定義?您沒有在代碼示例中添加數據屬性。爲什麼你的選擇包裹在兩個模板中?只需直接循環選項 –
@Frank Provost,對不起。我更新了我的問題 –
@Frank Provost,某些組件使用的location-bs-select組件。不僅由一個組件使用。所以我把它分開 –