首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何包装单词使其看起来像标签?

如何包装单词使其看起来像标签?
EN

Stack Overflow用户
提问于 2020-01-02 21:19:51
回答 2查看 70关注 0票数 0

我想听输入,当用javascript单击空格时,空格前面的单词将被包装成看起来像标签。

它应该像下面的“公共问题”中的“标签”一样。到目前为止的代码:

html:

代码语言:javascript
复制
<label for="subtypes" id="subtypes_label"><b>Restaurant subtypes</b></label>
<textarea type="text" name="subtypes" class="form-control w-50 p-3" id="subtypes" autocomplete="off" oninput=""></textarea>

javascript:

代码语言:javascript
复制
document.getElementById('subtypes').addEventListener('input', function(evt){
    wrapSubtypes(this.value);
});
function wrapSubtypes(value){

}

我不知道该在wrapSubtypes(value)中放什么。谢谢你的帮助。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2020-01-02 21:27:03

您可能希望从函数中返回元素中的换行文本,如下所示:

代码语言:javascript
复制
return `<span class="tag">${value.trim().split(/\s/).pop()}</span>`  

代码语言:javascript
复制
document.getElementById('subtypes').addEventListener('input', function(evt) {
  if (evt.data === ' ') {
    let tag = wrapSubtypes(this.value);
    document.getElementById('tags').innerHTML += tag;
  }
});

function wrapSubtypes(value) {
  return `<span class="tag">${value.trim().split(/\s/).pop()}</span>`
}
代码语言:javascript
复制
#tags{ padding:10px; }

.tag {
  border-radius: 25%;
  color: #444;
  background: #e5e5e5;
  padding:5px;
  margin-right:10px;
}
代码语言:javascript
复制
<div><label for="subtypes" id="subtypes_label"><b>Restaurant subtypes</b></label>
<textarea type="text" name="subtypes" class="form-control w-50 p-3" id="subtypes" autocomplete="off"></textarea>
</div>

<div id="tags"></div>

票数 1
EN

Stack Overflow用户

发布于 2020-01-02 21:25:33

试试这个:

代码语言:javascript
复制
document.getElementById('subtypes').addEventListener('input', function(evt){
    wrapSubtypes(this.value);
});
function wrapSubtypes(value){
  if(value.includes(' ')) {
    let newElement = `<li>${value.trim()}</li>`;
    document.querySelector('ul').innerHTML += newElement
    document.getElementById('subtypes').value = ""
  }
}
代码语言:javascript
复制
<label for="subtypes" id="subtypes_label"><b>Restaurant subtypes</b></label><br>
<textarea type="text" name="subtypes" class="form-control w-50 p-3" id="subtypes" autocomplete="off" oninput=""></textarea>

<p>Tags:</p>
<ul>
</ul>

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59564069

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档