如何通过单击选择元素(Vue.js)的选项项来触发操作?

亚历克斯

作为 JS 对象的选项列表:

options: [{
  text: this.$t('analytics.pastDays', { days: 7 }),
  value: 7
}, {
  text: this.$t('analytics.pastDays', { days: 28 }),
  value: 28
}, {
  text: this.$t('analytics.pastDays', { days: 360 }),
  value: 360
}, {
  text: this.$t('analytics.customDate'),
  value: 7,
  method: () => { console.log('Worked') }
}],

选择元素:

<select
  class="i-select"
  v-model="value"
  @change="onChange($event)">
  <option
    v-for="option in options"
    :value="option.value"
    @click.stop.prevent="option.method($event)">
    {{ option.text }}
  </option>
</select>

正确知道控制台日志从不记录。

如何使analytics.CustomDate选项触发其方法?

哈迪克·萨塔西亚

我认为选项上的点击事件不起作用,我们可以利用它的更改事件,(不确定选项元素是否不尊重 onclick)

您可以在此代码段中检查解决方法

var yourOptions = [{
    text: 'analytics.pastDays',
    value: 7,
    method: function() { console.log('this one is selected (7).') }
  }, {
    text: 'analytics.pastDays',
    value: 28
  }, {
    text: 'analytics.pastDays',
    value: 360,
    method: function() { console.log('this one is selected (360).') }
  }, {
    text: 'analytics.customDate',
    value: 70,
    method: function() { console.log('this one is selected (70).') }
  }];      
  
 var vm = new Vue({
    el: '#app',
    data: {   
        options: yourOptions,
        value:''
    },
    mounted: function() {
        
    },
    methods: {
        onChange: function(value) {
            var selected = yourOptions.filter(function(obj) {
              return obj.value == value
            })
            if(selected.length > 0) {
              selected.forEach(function(option){ if(option.method) { option.method(); } })
            }
        }
    }
  })
<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <title>VueJS</title>
    <script  src="https://cdnjs.cloudflare.com/ajax/libs/vue/2.0.3/vue.js"></script>
</head>
<body>
    <div id="app">
        <select
          class="i-select"
          v-model="value"
          @change="onChange(value)">
          <option
            v-for="option in options"
            :value="option.value"
            >
            {{ option.text }}
          </option>
        </select>
    </div>


</body>

</html>

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何通过选项值获取选择元素

来自分类Dev

如何通过赛普拉斯触发选择单击?

来自分类Dev

如何通过每次单击来选择数组的新索引

来自分类Dev

如何通过在jQuery中单击主体来隐藏div元素?

来自分类Dev

如何通过在jQuery中单击主体来隐藏div元素?

来自分类Dev

如何通过单击另一个元素触发对输入文件元素的单击

来自分类Dev

在 vue 上的选择中单击选项时如何获得价值?

来自分类Dev

无法通过jquery触发选择选项的操作

来自分类Dev

如何通过选择元素的ID设置选择元素的选择选项?

来自分类Dev

如何通过选择元素的ID设置选择元素的选择选项?

来自分类Dev

无法从选项选择中触发操作

来自分类Dev

仅通过单击鼠标左键来选择ListView项

来自分类Dev

仅通过单击鼠标左键来选择ListView项

来自分类Dev

如何通过cypress.io和vue.js v-select查找元素并进行选择?

来自分类Dev

如何通过文本查找元素并使用puppeteer js单击它

来自分类Dev

如何仅通过Fabric.js单击实际内容来选择对象

来自分类Dev

如何使用CSS 2.0选择器通过在父元素上设置的属性来选择元素?

来自分类Dev

如何基于vue js选择的另一个选择选项来更改选择选项

来自分类Dev

如何选择具有相同类的div元素并在单击的元素上执行某些操作

来自分类Dev

我如何通过单击预选选项来绑定 jquery 功能

来自分类Dev

如何通过操作/按钮单击来停止线程休眠?

来自分类Dev

单击子元素之一时,如何防止选择SortableJS项?

来自分类Dev

如何在Vue JS中触发元素?

来自分类Dev

如何通过在javascript的组合框中单击来选择项目?

来自分类Dev

角材料:如何通过仅单击复选框来选择表行?

来自分类Dev

如何通过单击鼠标来选择位置并在QGraphicsView中添加项目?

来自分类Dev

如何通过在javascript的组合框中单击来选择项目?

来自分类Dev

如何通过单击 element-ui 表中的 shift 键来选择批处理行?

来自分类Dev

如何通过单击 Angular 7 中的按钮获得下拉选择的选项

Related 相关文章

  1. 1

    如何通过选项值获取选择元素

  2. 2

    如何通过赛普拉斯触发选择单击?

  3. 3

    如何通过每次单击来选择数组的新索引

  4. 4

    如何通过在jQuery中单击主体来隐藏div元素?

  5. 5

    如何通过在jQuery中单击主体来隐藏div元素?

  6. 6

    如何通过单击另一个元素触发对输入文件元素的单击

  7. 7

    在 vue 上的选择中单击选项时如何获得价值?

  8. 8

    无法通过jquery触发选择选项的操作

  9. 9

    如何通过选择元素的ID设置选择元素的选择选项?

  10. 10

    如何通过选择元素的ID设置选择元素的选择选项?

  11. 11

    无法从选项选择中触发操作

  12. 12

    仅通过单击鼠标左键来选择ListView项

  13. 13

    仅通过单击鼠标左键来选择ListView项

  14. 14

    如何通过cypress.io和vue.js v-select查找元素并进行选择?

  15. 15

    如何通过文本查找元素并使用puppeteer js单击它

  16. 16

    如何仅通过Fabric.js单击实际内容来选择对象

  17. 17

    如何使用CSS 2.0选择器通过在父元素上设置的属性来选择元素?

  18. 18

    如何基于vue js选择的另一个选择选项来更改选择选项

  19. 19

    如何选择具有相同类的div元素并在单击的元素上执行某些操作

  20. 20

    我如何通过单击预选选项来绑定 jquery 功能

  21. 21

    如何通过操作/按钮单击来停止线程休眠?

  22. 22

    单击子元素之一时,如何防止选择SortableJS项?

  23. 23

    如何在Vue JS中触发元素?

  24. 24

    如何通过在javascript的组合框中单击来选择项目?

  25. 25

    角材料:如何通过仅单击复选框来选择表行?

  26. 26

    如何通过单击鼠标来选择位置并在QGraphicsView中添加项目?

  27. 27

    如何通过在javascript的组合框中单击来选择项目?

  28. 28

    如何通过单击 element-ui 表中的 shift 键来选择批处理行?

  29. 29

    如何通过单击 Angular 7 中的按钮获得下拉选择的选项

热门标签

归档