Я пытаюсь найти лучший подход к изменению скрытого поля формы django. Или, если это вообще возможно. У меня была настройка HTML, чтобы выполнить эту задачу, и она работала отлично. Однако, чтобы предотвратить многократную подачу заявок, мне пришлось изменить свой HTML, и теперь я не могу понять, как передать значение через кнопку HTML в зависимости от того, на что нажимает пользователь.
Раньше у меня были две кнопки, определенные как набросок ниже:
<button type="submit" class="button1" name="status" value="Saved"><h3 class="txtalgn4">Save</h3></button>
<button type="submit" class="button2" name="status" value="Submitted"><h3 class="txtalgn4">Submit</h3></button>
Как указано выше, это отлично работало с целью передачи значения атрибуту для моей модели. Значение статуса было сохранено, как и ожидалось, в зависимости от того, на какую кнопку нажал пользователь.
Теперь я обновил кнопки до type="button"
в ответ на эту проблему, которую я открыл сегодня ... Как предотвратить двойную отправку с проверкой формы
Я пытался использовать следующий код:
<button type="button" class="button1" name="status" value="Saved"><h3 class="txtalgn4">Save</h3></button>
<button type="button" class="button2" name="status" value="Submitted"><h3 class="txtalgn4">Submit</h3></button>
И затем я также изменил поле статуса на {{ status.as_hidden }}
в своем HTML, чтобы получить значение. Это работает, только если я жестко закодировал значение статуса в моей структуре базы данных. Мне нужно иметь возможность получить это значение динамически в зависимости от того, что пользователь нажимает. Является ли JQuery с Ajax правильным подходом для этого? Есть ли какой-нибудь простой способ изменить скрытое поле в зависимости от того, на какую кнопку нажимает пользователь?
Есть ли какой-нибудь лучший способ попытаться получить это поле скрытно? Как указано выше, способ HTML с type="submit"
работал отлично, но вызывал проблемы, когда я пытался помешать пользователю дважды отправить форму. Как и во всём программировании, я решил одну проблему и создал другую.
Заранее спасибо за любые мысли.