簡體   English   中英

如何將Bootstrap標簽輸入字段中的標簽存儲到我的收藏夾中?

[英]How to store tags from Bootstrap Tags Input field into my collection…?

我正在使用ajduke:bootstrap-tagsinput`包,並嘗試將數組存儲在:

$('#dealTags').tagsinput('items')

在我的交易集合中,但以下各項的價值:

$(e.target).find('[name=dealTags]').val()

返回未定義。 我是Meteor和Javascript的新手,如果這是一個愚蠢的問題,對不起。 這是表單字段:

<div class ="controls">
        <input id="dealTags" type="text" class="form-control" value="" placeholder="Add some tags..." data-role="tagsinput">
</div>

在這里,我嘗試將數據插入模板中的集合

var deal = {
      dealTitle: $(e.target).find('[name=dealTitle]').val(),
      venueName: $(e.target).find('[name=venueName]').val(),
      when: $(e.target).find('[name=when]').val(),
      dealTags: $(e.target).find('[name=dealTags]').val()
};

而我的收集方法實際上是在寫數據庫

Meteor.methods({
  dealInsert: function(dealAttributes) {
    check(Meteor.userId(), String);
    check(dealAttributes, {
      dealTitle: String,
      venueName: String,
      when: String,
      dealTags: String
});

謝謝!

我認為您需要使用select元素而不是input來讓val()返回數組。 (請參閱文檔

<div class ="controls">
    <select multiple id="dealTags" type="text" class="form-control" value="" placeholder="Add some tags..." data-role="tagsinput" />
</div>

另一個解決方案是繼續使用input元素,但是調用.tagsinput('items')而不是val()

var deal = {
  dealTitle: $(e.target).find('[name=dealTitle]').val(),
  venueName: $(e.target).find('[name=venueName]').val(),
  when: $(e.target).find('[name=when]').val(),
  dealTags: $(e.target).find('[name=dealTags]').tagsinput('items')
};

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM