下拉列表问题中的JQuery replaceWith()

下拉列表问题中的JQuery replaceWith(),jquery,dropdown,replacewith,Jquery,Dropdown,Replacewith,我是JQuery新手,在replaceWith函数方面有一个问题 我创建了一个下拉列表。单击下拉元素后,第一个按钮中的图标会发生变化,这就是我想要的。但单击后,下拉列表中的图标将被删除 这是我的HTML <button title="Kein Status" data-toggle="dropdown" class="btn btn-xs btn-link btn-outline"> <i id="icon" class="fas fa-thermometer-empt

我是JQuery新手,在replaceWith函数方面有一个问题

我创建了一个下拉列表。单击下拉元素后,第一个按钮中的图标会发生变化,这就是我想要的。但单击后,下拉列表中的图标将被删除

这是我的HTML

<button title="Kein Status" data-toggle="dropdown" class="btn btn-xs btn-link btn-outline">
    <i id="icon" class="fas fa-thermometer-empty text-danger fa-lg"></i>
</button>
<ul class="dropdown-menu">
    <li><button class="dropdown-item" onclick="saveToDB(this,\'status1\',\'' . $fieldRow['id'] . '\',\'50\')"><i id="newIcon" class="fas fa-thermometer-quarter fa-lg text-warning"> </i> 50 % Status</button></li>
</ul> 
点击Dropdownlist中的按钮后,列出代码

<li>
<button class="dropdown-item" onclick="saveToDB(this,\'status1\',\'' . $fieldRow['id'] . '\',\'50\')">
<i id="newIcon" class="fas fa-thermometer-quarter fa-lg text-warning"> </i> 50 % Status
</button>
</li>
  • 50%的地位
  • 改为

    <li>
    <button class="dropdown-item" onclick="saveToDB(this,\'status1\',\'' . $fieldRow['id'] . '\',\'50\')"> 50 % Status
    </button>
    </li>
    
  • 50%的地位

  • 据我所知,replaceWith函数类似于Move函数。如何将图标保留在Dropdownlist中?

    您需要向元素添加和删除类 i、 e

    在ajax的成功函数中添加检查

    If($('#newIcon').hasClass('fa-thermometer-quarter'))
    {
        $('#newIcon').removeClass('fa-thermometer-quarter');
        $('#newIcon').addClass('fa-check');
    } else {
        $('#newIcon').removeClass('fa-check');
        $('#newIcon').addClass('fa-thermometer-quarter' );
    } 
    

    您需要向元素添加和删除类 i、 e

    在ajax的成功函数中添加检查

    If($('#newIcon').hasClass('fa-thermometer-quarter'))
    {
        $('#newIcon').removeClass('fa-thermometer-quarter');
        $('#newIcon').addClass('fa-check');
    } else {
        $('#newIcon').removeClass('fa-check');
        $('#newIcon').addClass('fa-thermometer-quarter' );
    } 
    

    大家好,欢迎来到Stack Overflow!您在哪里使用replaceWith()?我在提供的代码中找不到它。很抱歉,我将replaceWith更改为html(),以便进行测试,并在没有再次阅读的情况下复制了代码。我已经编辑了JQuery部分您好,欢迎来到Stack Overflow!您在哪里使用replaceWith()?我在提供的代码中找不到它。很抱歉,我将replaceWith更改为html(),以便进行测试,并在没有再次阅读的情况下复制了代码。我已经编辑了JQuery部分,它将我的第一个按钮中的温度计更改为fa check,但是我的dropdownlist中的图标也被删除了。问题是Dropdownlist中的完整标签不存在。这会将我的第一个按钮中的温度计更改为fa check,但我的Dropdownlist中的图标也会被删除。问题是Dropdownlist中的完整标记已丢失。