Как извлечь id набора форм Django в Javascript?
У меня есть сомнения, дело в том, что я пытаюсь извлечь id Django formset в Javascript, однако при попытке сделать это я понял, что это появляется в Chrome DevTools:
S.fn.init
[[Prototype]]: Object (0)
То есть, ничего не происходит, но это кажется мне странным, потому что при печати в консоли я получаю имя id, которое мне нужно
что происходит и как я могу извлечь его id и, соответственно, значение?
calculate.js
//the number of total forms is taken
var formId="id_form-TOTAL_FORMS"
var form_idx = document.getElementById('id_form-TOTAL_FORMS').value;
console.log("el valor es:" + form_idx);
var totalForms=parseInt($('#'+formId).val());
console.log("totalForms:"+totalForms)
console.log(totalForms+1);
//dynamic id are created
var formset_quantity='id_form-'+form_idx+'-quantity';
var formset_unit_price='id_form-'+form_idx+'-unit_price';
console.log('formset quantity: '+formset_quantity);
console.log('formset unit price: '+formset_unit_price);
//the value of the one that contains the dynamic id is taken
//This is when everything goes wrong because when printing in the console I get the error above,
// as if that id does not exist(formset_quantity and formset_unit_price) or I am not creating it correctly
var id_formset_quantity=document.getElementById('formset_quantity').value;
var id_formset_unit_price=document.getElementById('formset_unit_price').value;
var formset_total_price=document.getElementById('id_form-'+form_idx+'-total_price');
presupuestos-forms.html
td id="parent_id_form-0-quantity">
<input type="number" name="form-0-quantity" class="form-control" id="id_form-0-quantity">
</td>
<td id="parent_id_form-0-unit_price">
<input type="number" name="form-0-unit_price" class="form-control" id="id_form-0-unit_price">
</td>
<td id="parent_id_form-0-total_price">
<input type="number" name="form-0-total_price" class="form-control" id="id_form-0-total_price">
</td>
Оставляйте кавычки, когда ссылаетесь на переменную. В противном случае она будет интерпретирована как строка.
var id_formset_quantity=document.getElementById(formset_quantity).value;