Ich möchte HTML auf der X-Achse meines D3-Graphen rendern. Grundsätzlich möchte ich, dass jedes Etikett auf der Achse ein Hyperlink zu einer anderen Spalte aus den Daten ist.HTML auf X-Achsen-Ticks rendern
Ich habe
versuchtx.domain(data.map(function(d) { return "<a href=\"" + d.SiteUrl + "\">" + d.Name + "</a>"; }));
aber es funktioniert nicht, überhaupt nicht. Statt eines Hyperlinks bekomme ich den eigentlichen Text Wert erhalten:
<a href="http://example.com">Something</a>
ich auch versucht habe
.tickFormat(function(d) { return "<a href=\"" + d.SiteUrl + "\">" + d.Name + "</a>"; })
auf der x-Achse hinzufügen, sowie zur Änderung der .attr("x", ...)
zu
.attr("x", function(d) { return "<a href=\"" + d.SiteUrl + "\">" + x(d.Name) + "</a>"; })
auf dem Diagramm selbst.
Fehle ich etwas?
Sie nicht html zu svg anhängen kann, es sei denn, Sie Fremdkörper verwendet werden, die nicht weit verbreitet ist. Ich würde vorschlagen, die Positionen jedes Ticks zu bekommen und html an diese Position an das Elternteil der SVG anzufügen. – thatOneGuy
Ich nehme an, dass ich keine HTML-Escape-Zeichen in der SVG auch dann rendern kann? (Ein anderes Problem, das ich habe, einen der 'Name' Werte hat' & 'darin.) –
nein nein kann. Überprüfen Sie dieses Beispiel: http://stackoverflow.com/questions/7458546/html-in-svg-in-html verwendet fremdes Objekt – thatOneGuy