Php 在jquery令牌字段中获取重复值,如何避免这些重复值
大家好,我正在使用jquerytokenfield,因为多次获得相同的用户名,所以我希望它只出现在下面一次。我发布了我的代码。您能告诉我如何避免重复值吗。 下面是带有文本框的脚本中标记字段的代码。我正在使用codeigniter框架Php 在jquery令牌字段中获取重复值,如何避免这些重复值,php,jquery,codeigniter,Php,Jquery,Codeigniter,大家好,我正在使用jquerytokenfield,因为多次获得相同的用户名,所以我希望它只出现在下面一次。我发布了我的代码。您能告诉我如何避免重复值吗。 下面是带有文本框的脚本中标记字段的代码。我正在使用codeigniter框架 <input type="text" name="txt" class="get_username"> <script> function get_token_field() { $('.get_username').tokenf
<input type="text" name="txt" class="get_username">
<script>
function get_token_field() {
$('.get_username').tokenfield({
autocomplete: {
source: "<?= base_url('controller/method name') ?>",
delay: 100
},
showAutocompleteOnFocus: true
});
}
</script>
Codeigniter模型中的以下脚本
public function get_user_names($name) {
$this->db->select('*');
$this->db->from('users');
$this->db->like('username', $name);
$query = $this->db->get();
if ($query->num_rows() > 0) {
foreach ($query->result_array() as $row) {
$test[] = $row['username'];
}
echo json_encode($test); //format the array into json data
}
}
请尝试下面的代码,它将检查您现有的令牌,如果您输入double,它将阻止
$('.get_username').on('tokenfield:createtoken', function (event) {
var tokens = $(this).tokenfield('getTokens');
$.each(tokens, function(index, token) {
if (token.value === event.attrs.value)
event.preventDefault();
});
});
朋友们好,我试过这个,但仍然不起作用。我正在调用一个函数,它将查找tokenfield,所以在调用函数后,我已经包含了您的脚本并删除了我的脚本,但这次没有得到一个value@MSp不要删除脚本,只需将其添加到脚本下面即可。谢谢你的回答,很好,现在还有一件事是,如果我有两个同名的人,例如:1)sumesh,2)sumesh,它只选择了一个人名,但忽略了最后一个人名,但他们的id不同。请告诉我如何获取这两个人,即使他们有相同的名字。@MSp你在文本框中绑定的只是用户名,所以无法获取id或者id和该字段的用途是什么。不能像这样在文本框中绑定id和人名。
$('.get_username').on('tokenfield:createtoken', function (event) {
var tokens = $(this).tokenfield('getTokens');
$.each(tokens, function(index, token) {
if (token.value === event.attrs.value)
event.preventDefault();
});
});