javascript - 如何在vue js中以逗号分隔的字符串中发布子类别?

标签 javascript jquery vue.js vuejs2 vue-component

现在我可以通过以下方式发布子类别吗? 现在结果是

subcategory[] : Healthcare
subcategory[] : education

但是我需要将其作为用逗号分隔的字符串来获取?

我的html代码是

<div id="submitBox">
  <form method="POST" onSubmit="return false;" data-parsley-validate="true" v-on:submit="handelSubmit($event);">
    <select id="basic" class="selectpicker"  data-live-search="true" data-live-search-style="begins" title="Select Your City" v-model="subcategory" name="subcategory[]" multiple>
      <option v-for="so in services" v-bind:value="so.name">{{so.name}}</option>  
   </form>
</div>

我的vue js代码是

<script>
submitBox = new Vue({
  el: "#submitBox",
  data: {
    subcategory: [],
  },
  methods: {
    handelSubmit: function(e) {
      var vm = this;
      data = {};
      data['subcategory'] = this.subcategory;
      $.ajax({
        url: '/post/',
        data: data,
        type: "POST",
        dataType: 'json',
        success: function(e) {
          if (e.status) {
            alert("Registration Success")
          } 
        }
      });
      return false;
    }
  },
});
</script>

我需要发布数据

subcategory : healthcare,education

有人可以帮我解决同样的问题吗?

最佳答案

this.subcategory 是一个数组,您可以使用 join 将其转换为字符串像这样:

let services = [
  {name: 'Hamburger'},
  {name: 'Sandwich'},
  {name: 'Hotdog'}
];

submitBox = new Vue({
  el: "#submitBox",
  data: {
    subcategory: [],
  },
  methods: {
    handelSubmit: function(e) {
      var vm = this;
      data = {};
      data['subcategory'] = this.subcategory.join(',');
      
      console.log(data);
      
      return false;
    }
  },
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/vue/2.5.13/vue.min.js"></script>
<div id="submitBox">
  <form method="POST" onSubmit="return false;" data-parsley-validate="true" v-on:submit="handelSubmit($event);">
    <select id="basic" class="selectpicker" data-live-search="true" data-live-search-style="begins" title="Select Your City" v-model="subcategory" name="subcategory[]" multiple>
      <option v-for="so in services" v-bind:value="so.name">{{so.name}}</option>  
    </select>
    <button>Submit</button>
  </form>
</div>

关于javascript - 如何在vue js中以逗号分隔的字符串中发布子类别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47910022/

相关文章:

javascript - 如何定义可以链接到其他 Javascript 库的 Javascript 函数?

javascript - Vue.js 调用组件/实例方法

typescript - 如何制作响应式(Reactive)变量,比如 Vue 中的 data()? Vue+ typescript

javascript - Angular ng 重复 : "Duplicates in a repeater are not allowed"

javascript - jQuery scrollLeft 在 rtl 方向 - FireFox 和 Chrome 中的不同值

javascript - 按下或单击时功能不起作用

php - jQuery 无法从 href 属性获取文件部分

javascript - 在 VueJS 2 中使用 v-for value + string 的动态 v-model

Javascript Checkbox.OnChange 事件未正确触发

javascript - 如何通过脚本标签将 Vue.js 应用程序加载到现有网页中?