Django флажок отображать содержимое
Я пытаюсь отобразить другой контент. Но что-то я делаю ложным. Если я проверяю pid, он должен показывать только pid, если я проверяю pid и заголовок, он должен показывать оба. В моем примере я показываю оба, но как я могу изменить это с помощью флажков? Благодарю.
<form class="fedora" method="post">{% csrf_token %}
<input type="checkbox" name="pid" value="{{obj.pid}}"> pid
<input type="checkbox" checked name="title" value="{{obj.title}}"> title
</form>
...
{% fedora_access %}
<p><a href="{% url 'display' obj.pid %}">
{%if obj.pid %} {{ obj.pid }}|{% endif %}
{{ obj.pid }} | {{ obj.title }}
</a></p>
{% end_fedora_access %}
1 ответ
<form class="fedora" method="post">{% csrf_token %}
<input type="checkbox" id="show_pid" name="pid" value="{{obj.pid}}"> pid
<input type="checkbox" id="show_title" checked name="title" value="{{obj.title}}"> title
</form>
...
{% fedora_access %}
<p><a href="{% url 'display' obj.pid %}">
<span class="show_pid">{{ obj.pid }}</span> | <span class="show_title">{{ obj.title }}</span>
</a></p>
{% end_fedora_access %}
Тогда в JavaScript:
$(function() {
$('#show_pid').click(function() {
if ($(this).is(':checked')) $('.show_pid').show();
else $('.show_pid').hide();
});
$('#show_title').click(function() {
if ($(this).is(':checked')) $('.show_title').show();
else $('.show_title').hide();
});
});
хотя, когда ни один не проверен, вы будете иметь |
все еще показывает. Вы можете подделать это с помощью CSS. Дайте пролетам border-left: 1px solid black
и border-right: 1px solid black
или что-то.