如何用js清除tokenfield
Posted
技术标签:
【中文标题】如何用js清除tokenfield【英文标题】:how to clear tokenfield with js 【发布时间】:2021-05-01 08:39:21 【问题描述】:我想为 jquery 令牌字段制作一个重置按钮,但不知道如何重置它。
HTML
<input type="text" class="input" name="testtokenfield" id="testtokenfield" placeholder="testtokenfield" value="">
<button onclick ="clear()"></button>
JS
$('#testtokenfield').tokenfield(
showAutocompleteOnFocus: true
);
function clear()
document.getElementById('testtokenfield').value = "";
【问题讨论】:
【参考方案1】:你不能这样做:
$('#testtokenfield').tokenfield('destroy');
参考:Tokenfield for Bootstrap。
【讨论】:
这将破坏整个 tokenField 输入并将其变成简单输入,【参考方案2】:使用setToken 方法将空数组传递给您的输入
$('#testtokenfield').tokenfield('setTokens', []);
请参阅下面的工作 sn-p :
$(function()
$('#testtokenfield').tokenfield(
autocomplete:
source: ['red', 'blue', 'green', 'yellow', 'violet', 'brown', 'purple', 'black', 'white'],
delay: 100
,
showAutocompleteOnFocus: true
);
$("#btn").on("click", function(e)
$('#testtokenfield').tokenfield('setTokens', []);
);
);
body
padding: 5px;
<link href="http://code.jquery.com/ui/1.12.1/themes/smoothness/jquery-ui.css" rel="stylesheet"/>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/2.2.3/jquery.min.js"></script>
<script src="http://sliptree.github.io/bootstrap-tokenfield/docs-assets/js/typeahead.bundle.min.js"></script>
<script src="http://sliptree.github.io/bootstrap-tokenfield/dist/bootstrap-tokenfield.js"></script>
<script src="http://sliptree.github.io/bootstrap-tokenfield/dist/bootstrap-tokenfield.js"></script>
<script
src="https://code.jquery.com/ui/1.12.1/jquery-ui.min.js"
integrity="sha256-VazP97ZCwtekAsvgPBSUwPFKdrwD3unUfSGVYrahUqU="
crossorigin="anonymous"></script>
<link href="http://sliptree.github.io/bootstrap-tokenfield/dist/css/bootstrap-tokenfield.css" rel="stylesheet"/>
<link href="http://sliptree.github.io/bootstrap-tokenfield/dist/css/tokenfield-typeahead.css" rel="stylesheet"/>
<link href="http://netdna.bootstrapcdn.com/bootstrap/3.0.0/css/bootstrap.min.css" rel="stylesheet"/>
<input type="text" class="input" name="testtokenfield" id="testtokenfield" placeholder="" value="">
<br>
<button class="btn btn-success" id="btn">clear</button>
【讨论】:
【参考方案3】:<input type="text" class="input" name="testtokenfield" id="testtokenfield" placeholder="testtokenfield"/>
<button id='clearbtn'>Clear</button>
const testtokenfield= document.getElementById("testtokenfield");
const clearbtn= document.getElementById("clearbtn");
clearbtn.addEventListener('click', ()=>
// clearing the input field
testtokenfield.value = " ";
)
我们需要将点击事件附加到清除按钮元素并将 testtokenfield.value 属性设置为空字符串“”。这样当用户点击按钮时,输入字段的值就会被清除。
【讨论】:
以上是关于如何用js清除tokenfield的主要内容,如果未能解决你的问题,请参考以下文章