2014-08-27 67 views
0

在我的应用程序创建一个使用D3功能的几个按钮,但是当他们显示他们没有圆形边框像硬编码按钮的功能:jQuery Mobile的方/圆造型

“菜单”难编码,其他四个按钮是从D3的功能 enter image description here

我首先想到我已经搞砸了按钮的类,但他们确实有ui-corner-all类: enter image description here

他们为什么不得到病急乱投医是否正确? (有除了红色文字应用没有自定义CSS) 他们应该沿着这些例子的线条看起来: http://demos.jquerymobile.com/1.4.2/checkboxradio-radio/

编辑: 这里的D3功能:

this.initialLoad = function(){ 
     //var data= ["First button with some long text in the descriptionnnnnnnnnnnnnnnnnnnnnnnnnnnn", "Second button with some long text in the description"]; 

     console.log("initialLoad"); 
     //Create the header 
     headerElem = d3.select("#uploadedCompany") 
     .append("p"); 
     //add the required buttons for selecting the right sheet for the set 
     var Addedbuttons = d3.select("#TheButtons").selectAll("input") 
      .data(
          function(){ 
       var titlelist = Array(); 
       for (var n = 0; n < numOfSheets; n++){ 
        titlelist[n]= upLoadedData[n].title; 
       } 
       return titlelist; 
      } 
        ) 
      .enter() 
      .append('label') 
      .attr('for',function(d,i){ return 'Statement_a'+i; }) 
      .text(function(d) { return d; }) 
      .append("input")  
      .attr("type", "radio") 
      .attr("name","stmntRadio") 
      .property('checked',function (d,i){if (i===pSI) return true; else return    `false;})` 
      .attr("id", function(d,i) { return i; }) 
      .attr("onClick", "rbStatementClicked(this)"); 

     //make sure that the trendON is false 
     d3.select("#cbTrendOn").node().checked = false;   
     updateSheet(); 
        $("#TheButtons").enhanceWithin(); 
    }; 
+0

我们展示您的代码创建的按钮或创建重现这一问题的小提琴。如果你愿意,你可以编辑和更新这个小提琴:http://jsfiddle.net/ezanker/7fnzubbt/ – ezanker 2014-08-27 19:17:33

+0

我不能重新创建它。所有这些结果都是循环的/与我现在所拥有的不同。 – user3413170 2014-08-27 22:24:20

回答

0

我假设你#TheButtons DOM元素设置为data-type =“horizo​​ntal”的控制组。在这种情况下,你只需要在内部的增强之后添加.controlgroup(“刷新”)。另外,将动态控件添加到控件组中的.ui-controlgroup-controls DIV。

var Addedbuttons = d3.select("#TheButtons .ui-controlgroup-controls ").selectAll("input") 
      .data(data) 
      .enter() 
      .append("input")  
      .attr("type", "radio") 
      .attr("name","stmntRadio") 
      .attr("id", function(d,i) { return 'Statement_a'+i; }) 
      .attr("onClick", "rbStatementClicked(this)") 
      .append('label') 
      .attr('for',function(d,i){ return 'Statement_a'+i; }) 
      .text(function(d) { return d; }) 
; 

$("#TheButtons").enhanceWithin().controlgroup("refresh"); 

这里是一个DEMO