#javascript #django #for-loop
#javascript #django #for-цикл
Вопрос:
Я хочу, чтобы кнопка в цикле for могла независимо запускать ту же функцию для click the hidden во время click the , но без ответа после нажатия.
html for-цикл:
{% for order_item in orders %}
<a class="btn btn-warning" >Upload File</a>
<input type="file" id="img-file{{ forloop.counter }}" hidden="hidden"/>
<button type="button" onclick="function upload_img({{ forloop.counter }}){}">Upload</button>
{% endfor %}
js:
<script>
function upload_img(x) {
const realFileBtn = document.getElementById('img-file' x);
realFileBtn.click()
}
</script>
Комментарии:
1. Есть ли ошибка?
2.
function
не должно быть в onclick…. Вы определяете функцию при каждом onclick, а не вызываете ее
Ответ №1:
Вам нужно вызвать функцию внутри onclick
, а не определять.
onclick="upload_img({{ forloop.counter }})"
Ответ №2:
Вы определяете функцию в теге button, и она вызывается где угодно, что неправильно, вы должны вызвать ее где угодно.
Создайте функцию с именем upload_img
и вызовите ее внутри onclick
следующим образом
onclick="upload_img({{ forloop.counter }})"