1

我会尽力解释发生了什么,因为这很奇怪。在我们的网站上进行一些更改之前(这没有被触及)这工作得很好当我使用 .buttonset()

我们目前有一个多步骤表单,在第二步中,我们使用第一步中的详细信息向客户提供服务提供商列表,他们可以在其中选择他们想要使用的服务提供商。

我们使用 ajax 返回放置在 radio-group div 中的 HTML。下面的 HTML 示例:

<input type="radio" value="1" name="cleaner-select" id="cleaner-select-1" class="cleaner_selection ui-corner-left">
<label for="cleaner-select-1" class="cleaner-selection-box col-md-2 col-xs-12">
     <div class="col-md-12 col-xs-12 center fivepxpad">
        <button type="button" class="btn btn-default btn-primary" onclick="view_profile(1)"> View Cleaner Profile <span class="btn-icon-right icon-circle-right"></span></button>
    </div>
    <div class="col-md-12 col-xs-12 cleanerproducts">
        <span class="icon green icon-leaf fontsize16"></span> Eco / Natural Products 
    </div>
    <div class="col-md-12 col-xs-12">
        <span class="icon icon-shield cleanerverified"></span> Verified  
    </div>
    <div class="col-md-12 col-xs-12">
        <span class="icon icon-location"></span> Close-By   
    </div>
</label>

这放置在下面的 DIV 中:

<div id="radio-group" class="center">

</div>

使用这个 JQuery

$('#radio-group').html(result[1]);
$('#radio-group').buttonset();

当前错误:

  1. 当 buttonset 被调用时,所有无线电输入的值都被删除。例如。从 value="1" 变为 just value。这以前没有发生过,我知道 buttonset 是造成这种情况的原因,因为当我删除 $('#radio-group').buttonset(); 该值保持正常(HTML 中没有错误)。

  2. 当 buttonset 应用于父 div“radio-group”时,它按预期接收 ui-buttonset 类,但没有其他任何反应,输入单选按钮仍然可见,选择时颜色不显示并且标签保持白色(意味着是浅灰色),但是当点击标签时,选择了正确的 raido 输入。

在我们上次更新时,我们将几个 CSS 文件和 JS 文件合并在一起,但保持所有内容的顺序与之前加载的顺序相同。这是为了减少我们必须进行的调用量,其他一切都工作正常,所以不完全确定这是造成它。我们也没有得到控制台错误。

我尝试过的事情:

  1. 改变了 $('#radio-group').buttonset(); 到 $('#radio-group').button();
  2. 调用 $('#radio-group').buttonset(); 在 document.ready 中并尝试过 $('#radio-group').buttonset('refresh); 当 HTML 改变时
  3. $('#radio-group').buttonset('refresh); 通过它自己
  4. 仔细检查所有 CSS 和 JS。(包括 JQuery-UI .js 和 .css)

我将尝试切换回我们的旧页眉和页脚文件(进行更多调用)以查看是否可以修复它,但如果有人知道发生了什么,任何帮助/想法/建议将不胜感激。

我似乎找不到任何有类似问题的人,我已经在这方面工作了几个小时,这让我很头疼。如果您需要更多信息,请告诉我。

4

0 回答 0