Tengo una función de búsqueda en mi aplicación django usando ajax. Muestra todos los resultados de un modelo.
Sin embargo, quiero limitar la cantidad de resultados que devuelve la búsqueda en la página, por lo que cuando el conjunto de consultas es tan grande, el usuario debe hacer clic en "ver todos los resultados", en lugar de tener montones de resultados en el cuadro de búsqueda.
Estoy tratando de hacer esto agregando un formulario HTML a continuación, pero cuando hago clic en href, está creando una solicitud GET. No estoy totalmente seguro de lo que necesito arreglar aquí para pasar los datos a la vista y mostrar la nueva página.
resultsBox.innerHTML += ` <a href="${url} ${'results'}" class="item"> <form method="POST" class="post-form" input type="submit" {% csrf_token %} <action="${url} ${'results'}"> </form> <div class="row mt-2 mb-2"> <div class="col-2"> img placeholder </div> <div class="col-10"> <h5>See all results for "${quote}"</h5> </div> </div> </a> ` `Está envolviendo todo el formulario en el href , probablemente solo quiera que See all results sea el enlace.
resultsBox.innerHTML += ` <form method="POST" class="post-form" input type="submit" {% csrf_token %} <action="${url} ${'results'}"> </form> <div class="row mt-2 mb-2"> <div class="col-2"> img placeholder </div> <div class="col-10"> <h5> <a href="${url} ${'results'}" class="item"> See all results for "${quote}" </a> </h5> </div> </div>`Alternativamente (como se indica en los comentarios a continuación): para evitar un GET y tener un POST en su lugar, desea enviar un formulario, no seguir un hipervínculo: ¿Cómo enviar un formulario con JavaScript haciendo clic en un enlace?