Quiero obtener el valor del precio del artículo en js para cada selección, ¿cuál sería mi función jquery?
{% for package in packages %} <div class="form-group col-md-6"> <label for="bedrooms">{{ package.title }}<span style="color: red;">*</span></label> <select class="form-control input-dsn" required id="bedrooms" name="package_{{ package.id }}" onChange="document.getElementByName('package_{{ package.id }}').value = this.value;"> {% for item in package.item_set.all %} <option value="{{ item.id }}" data-item-value="{{ item.price }}">{{ item.title }}</option> {% endfor %} </select> </div> {% endfor %}Esto (creo) iterará sobre todas las opciones llamando a una función en cada una.
$(document).ready(function() { $("#bedrooms option").each(function() { $(this).attr("data-item-value") // is the value you want }); }); Personalmente, tiendo a "hacer trampa" e incluir pequeños scriptlets de JQuery en mi plantilla donde Django puede sustituir los valores que quiero. Lo único que debe recordar es que ciertos espacios en blanco se vuelven significativos. { { es JS. ¡ {{ va a hacer que el motor de plantillas de Django tenga indigestión!
var option_values = [ {% for item in package.item_set.all %}{{ item.price }}, {%endfor%} ];