专注于v-for问题内的textarea

时间:2019-11-18 16:45:37

标签: javascript html css vue.js vuejs2

我有评论和答复。

当我单击评论上的回复按钮时,我希望它专注于折叠的文本区域。

自从其注释部分以来,有很多文本区域。

  <div class="bg-white border shadow-soft p-4 mb-4" v-for="comment in comments" :key="comment.id" 

回复按钮:

   <b-button class="text-action font-weight-light font-small" v-b-toggle="'collapse-'+comment.id" @click="focusTextArea('replay'+comment.id)">
                    <i class="fas fa-reply mr-2"></i> رد</b-button>

textarea:

   <b-collapse :id="'collapse-'+comment.id">
     <textarea class="form-control " v-model="reply"  placeholder="Reply to John Doe" rows="6"  :ref="'replay'+comment.id"></textarea>
    <div class="d-flex justify-content-between mt-3"><small class="font-weight-light"><span >1000</span> characters remaining</small>
<button class="btn btn-primary btn-sm animate-up-2" type="button" @click="replyTo(comment)">send</button>
   </div>
    </b-collapse>

我已经尝试过了:

   focusTextArea(textarea) {
                this.$nextTick(() => {
                    this.$refs[textarea][0].focus();
                });
            },

,然后单击^上方的按钮。

当我单击该按钮时,什么也没有发生,但是当我单击该按钮时,文本区域被折叠,并且焦点在折叠时出现:\

有什么想法吗?

0 个答案:

没有答案