2016-07-27 80 views
0

我正在使用d3編寫一個圖表函數。但它不起作用。 請幫助任何一個。d3.js函數不能使用div ID

<script> 

    var chart=function(a){ 
     var w=960,h=500; 
     var svg=d3.select('#a') 
      .append("svg") 
      .attr("width",w).attr("height",h); 

     svg 
      .append("text") 
      .text("hello world").attr("x",100).attr("y",100); 
    } 
    chart(context); 

    </script> 

div標籤ID是 '語境'()。

回答

0

現在,您通過"#a"作爲字符串。你必須連接字符串"#"與你的論點。

例如,看看這個片斷:

var foo = "bar"; 
 

 
console.log("#foo"); 
 
console.log("#" + foo);

第一的console.log給你"#foo",因爲它只是一個字符串。第二個給你的值爲foo

所以,你的代碼應該是:

<script> 

var chart=function(a){ 
    var w=960,h=500; 
    var svg=d3.select('#' + a) 
     .append("svg") 
     .attr("width",w).attr("height",h); 

    svg 
     .append("text") 
     .text("hello world").attr("x",100).attr("y",100); 
} 
chart(context); 

</script>