Siguiendo algunos tutoriales de matraces, construí una tabla con filas en las que se puede hacer clic. Al hacer clic en cualquier valor de la columna de índice, se redirige al usuario a una nueva ruta con el nombre del valor de índice en el que se hizo clic, por ejemplo, @app.route(/1). Sin embargo, esto no es exactamente lo que quiero y estoy luchando para ajustar la aplicación a mis necesidades.
Me gustaría que el usuario se moviera a una ruta 'XYZ' sin importar el valor en el que se haya hecho clic. Luego, la ruta 'XYZ' debe imprimir/almacenar el valor del índice en el que hizo clic el usuario.
¿Cómo puedo cambiar el valor de anclaje HTML a estático y al mismo tiempo almacenar el valor en el que se hizo clic?
HTML
{% extends "bootstrap/base.html" %} {% block content %} <head> <script type="text/javascript" src="{{ url_for('static', filename='js/click_table.js') }}"></script> </head> <table id="data" class="table table-striped"> <thead> <tr> <th>Index</th> <th>Playlist Name</th> <th>Playlist ID</th> </tr> </thead> <tbody> {% for index, row in playlists_df.iterrows() %} <tr> <td><a href="{{ row['index'] }}"> {{ row['index'] }} </a></td> <td>{{ row['name'] }}</td> <td>{{ row['id'] }}</td> </tr> {% endfor %} </tbody> </table> </form> {% endblock %}JS
$(document).ready(function() { $('#data tr').click(function() { var index = $(this).find("a").attr("href"); if(index) { window.location = index; } }); });Parte de Python que estoy buscando:
@app.route('/XYZ') def get_clicked_index_value(): # request index_value from JS return Index