私はこのコードを次の場所に持っていますjsfiddle
:http://jsfiddle.net/nikunj2512/L6u9x/4/
テキスト入力と送信ボタンもあります。私が達成しようとしているのは、ユーザーがsvgボックスに表示されている番号を入力すると、その番号付きボックスが強調表示されることです。しかし、私はこれを行う方法を知っています。
var w = 100;
var h = 100;
var padding = 5;
var svg = d3.select('#svg1').append('svg')
.attr({
width: w,
height: h
});
svg.append('rect')
.attr({
width: w,
height: h,
fill: 'red'
});
var little = svg.selectAll('rect.small')
.data(d3.range(9));
little.enter().append('rect')
.attr({
width: w / 3 - padding * 2,
height: h / 3 - padding * 2,
fill: 'grey',
x: function(d) { return d % 3 * (w / 3) + padding; },
y: function(d) { return ~~(d / 3) * (h / 3) + padding; }
})
var text = svg.selectAll("text")
.data(d3.range(9))
.enter()
.append("text");
//Add SVG Text Element Attributes
var textLabels = text
.attr("x", function(d) { return d % 3 * (w / 3) + padding; })
.attr("y", function(d) { return ~~(d / 3) * (h / 3)+ padding*5; })
.text( function (d) { return d; })
.attr("font-family", "sans-serif")
.attr("font-size", "20px")
.attr("fill", "white");
$( "#target" ).submit(function( event ) {
var val = $("input:first").val();
event.preventDefault();
var h = d3.select("rect").datum(val);
console.log(h);
});
私を助けてください。