php - 如何使用 PHP Ajax 编辑 Bootstrap Tokenfield 标签数据?

标签 php css ajax tags

我正在使用 Bootstrap Tokenfield 标签数据插入标签。它适用于插入操作。但我无法更新该标签数据。如何更新数据库中的标签。我列出了数据库中的所有标签。但是如何更新我不知道如何编辑标签值。 请帮忙。

我的 php 代码是这样的

<div class="form-group">
<label class="form-label" for="validation-username">Tags <span class="text text-danger">*</span></label>
            <?php 

                $tags = explode(",",$a['tags']);

                foreach($tags as $t => $value){?> 
                    <span class="tm-tag tm-tag-info" id="CIGpD_<?php echo $t;?>">

                        <span><?php echo $value;?></span>

                        <a href="javascript:void(0)" class="tm-tag-remove" id="CIGpD_Remover_<?php echo $t;?>" tagidtoremove="<?php echo $t;?>">x</a>

                    </span>
            <?php }  ?>

<input type="text" value="<?php echo $a['tags']?>" name="tags" placeholder="Tags" class="typeahead tm-input form-control tm-input-info"/>
</div>

我的 JS 是这样的


$('.tm-tag-remove').click(function(){
            var tagid = document.querySelector('.tm-tag-info').id;
            $('#' + tagid).remove();

            var tag = $('.tm-input-info').val();
            console.log(tag);
            var tagArr = tag.split(',');

            tagArr.forEach(function(tagArr, value){

                var spanid = $('#CIGpD_' + value).text();
                // console.log(spanid);
            });



        });

最佳答案

您应该从 javascript 中分配值,而不是从 php 中分配值,这样它就会更新标签。 $a['tags'] 你需要在 javascript 中使用这个数组,就像我在示例 yourTags 中使用的那样,或者你也可以尝试使用逗号分隔值。

这是工作示例:

$('.tm-tag-remove').click(function() {
  var tagid = document.querySelector('.tm-tag-info').id;
  $('#' + tagid).remove();

  var tag = $('.tm-input-info').val();
  console.log(tag);
  var tagArr = tag.split(',');

  tagArr.forEach(function(tagArr, value) {

    var spanid = $('#CIGpD_' + value).text();
    // console.log(spanid);
  });
});

var yourTags = ['blue','red','white'];

$('.typeahead').tokenfield({})
$('.typeahead').tokenfield('setTokens', yourTags.join(','));
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-tokenfield/0.12.0/bootstrap-tokenfield.min.js"></script>
<link href="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-tokenfield/0.12.0/css/bootstrap-tokenfield.min.css" rel="stylesheet" />
<link href="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-tokenfield/0.12.0/css/tokenfield-typeahead.min.css" rel="stylesheet" />
<div class="form-group">
  <label class="form-label" for="validation-username">Tags <span class="text text-danger">*</span></label>


  <input type="text" value="" name="tags" placeholder="Tags" class="typeahead tm-input form-control tm-input-info" />
</div>

关于php - 如何使用 PHP Ajax 编辑 Bootstrap Tokenfield 标签数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59464937/

相关文章:

php - 如何通过 PHP 或 Javascript 检查 HTML 代码是否有效

php - PHP正则表达式替换中的可选字符

ajax - 如何在 Service Worker Fetch API 中检测 URL 请求是否为 ajax

javascript - 如何确定 AJAX 网站的所有资源何时已完全加载?

javascript - Ajax jQuery 未将变量传递给数据未定义错误

php - 使用 CONCAT() 的日志 IP 地址的 MySQL 更新问题

php - 使我的 PHP 站点免受黑客攻击

具有 jquery 移动风格的 jQuery-File-Upload 按钮

javascript - 当内容小于默认大小 (300x150) 时 iframe 调整大小

jquery - 具有响应式表格宽度的 HTML 表格固定标题