【问题标题】:Vue strap get value from selectVue 表带从选择中获取价值
【发布时间】:2018-04-11 09:35:44
【问题描述】:

我有问题。无法使用 vue strap select 从选择中获取值。

我的html代码:

<bs-select 
  v-model="select.value" 
  :options="select.options" 
  options-value="val" 
  justified 
  close-on-select 
  placeholder="Chose action" 
  @change="contract_corresponds_activity"
></bs-select>

我也试过 :value.sync 除了 v-model。

我的js代码:

import {input, checkbox, select, option} from 'vue-strap'
export default {
components: {
  'bs-select': select,
},
data () {
  return {
select: {
      options: [
        {val: 0, label: 'unknown'},
        {val: 1, label: 'plus 1'},
        {val: 2, label: 'plus 2'},
        {val: 4, label: 'plus 4'},
        {val: 6, label: 'plus 6'}
      ],
      value: ''
    }
},
methods: {
some_function () {
    alert(this.select.value)
    axios.post(this.api_url + this.$route.params.id + '/domgmt', { value: this.select.value
    }).then(response => {
      this.update_form_data(response.data)
    }).catch(error => {
      this.errors = error.response.data.errors
    })
  }
}

这段代码给了我选择选项,但我无法将它保存到变量值。我的帖子请求是空字符串,就像我的警报没有给我任何东西一样。我的目标是发送值:1、2、4、6 或 0。

【问题讨论】:

  • 文档使用 :value.sync="select.value" 而不是 v-model
  • 我试过:value.sync,没有变化,值仍然是空字符串

标签: vue.js vuejs2 vue-strap vue-select


【解决方案1】:

问题是我应该在更改事件中添加参数,所以代码如下所示:

 some_function (value) {
    alert(value)
    axios.post(this.api_url + this.$route.params.id + '/domgmt', { value: value
    }).then(response => {
      this.update_form_data(response.data)
    }).catch(error => {
      this.errors = error.response.data.errors
    })
  }

在这种情况下,它会显示我刚才点击的内容

【讨论】:

    猜你喜欢
    • 2017-11-22
    • 2018-05-30
    • 1970-01-01
    • 2013-10-25
    • 1970-01-01
    • 1970-01-01
    • 2018-02-03
    • 1970-01-01
    • 2018-03-08
    相关资源
    最近更新 更多