mirror of
https://github.com/simonw/datasette.git
synced 2025-12-10 16:51:24 +01:00
Fix for datalist against foreign key facets
Refs https://github.com/simonw/datasette/issues/1890#issuecomment-1314850524
This commit is contained in:
parent
3652b7472a
commit
eac028d3f7
2 changed files with 6 additions and 7 deletions
|
|
@ -244,18 +244,17 @@ var DROPDOWN_ICON_SVG = `<svg xmlns="http://www.w3.org/2000/svg" width="14" heig
|
||||||
);
|
);
|
||||||
Array.from(facetResults).forEach(function (facetResult) {
|
Array.from(facetResults).forEach(function (facetResult) {
|
||||||
// Use link text from all links in the facet result
|
// Use link text from all links in the facet result
|
||||||
var linkTexts = Array.from(
|
var links = Array.from(
|
||||||
facetResult.querySelectorAll("li:not(.facet-truncated) a")
|
facetResult.querySelectorAll("li:not(.facet-truncated) a")
|
||||||
).map(function (link) {
|
);
|
||||||
return link.textContent;
|
|
||||||
});
|
|
||||||
// Create a datalist element
|
// Create a datalist element
|
||||||
var datalist = document.createElement("datalist");
|
var datalist = document.createElement("datalist");
|
||||||
datalist.id = "datalist-" + facetResult.dataset.column;
|
datalist.id = "datalist-" + facetResult.dataset.column;
|
||||||
// Create an option element for each link text
|
// Create an option element for each link text
|
||||||
linkTexts.forEach(function (linkText) {
|
links.forEach(function (link) {
|
||||||
var option = document.createElement("option");
|
var option = document.createElement("option");
|
||||||
option.value = linkText;
|
option.label = link.innerText;
|
||||||
|
option.value = link.dataset.facetValue;
|
||||||
datalist.appendChild(option);
|
datalist.appendChild(option);
|
||||||
});
|
});
|
||||||
// Add the datalist to the facet result
|
// Add the datalist to the facet result
|
||||||
|
|
|
||||||
|
|
@ -12,7 +12,7 @@
|
||||||
<ul class="tight-bullets">
|
<ul class="tight-bullets">
|
||||||
{% for facet_value in facet_info.results %}
|
{% for facet_value in facet_info.results %}
|
||||||
{% if not facet_value.selected %}
|
{% if not facet_value.selected %}
|
||||||
<li><a href="{{ facet_value.toggle_url }}">{{ (facet_value.label | string()) or "-" }}</a> {{ "{:,}".format(facet_value.count) }}</li>
|
<li><a href="{{ facet_value.toggle_url }}" data-facet-value="{{ facet_value.value }}">{{ (facet_value.label | string()) or "-" }}</a> {{ "{:,}".format(facet_value.count) }}</li>
|
||||||
{% else %}
|
{% else %}
|
||||||
<li>{{ facet_value.label or "-" }} · {{ "{:,}".format(facet_value.count) }} <a href="{{ facet_value.toggle_url }}" class="cross">✖</a></li>
|
<li>{{ facet_value.label or "-" }} · {{ "{:,}".format(facet_value.count) }} <a href="{{ facet_value.toggle_url }}" class="cross">✖</a></li>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue