2016-11-23 47 views
-1

有沒有可能通過jQuery將表單值從模板發送到數據庫?我想在複選框中更改布爾值並將其保存在模型中,並通過jQuery發送此信息以進行查看。如何通過jQuery將關於布爾型字段的數據從模板發送到django視圖?

在我的模板,我得到這個:

<form id="foodForm" action="{% url 'foods:choose_diet' %}" method="post" role="form"> 
    <div id="green-check" class="checkbox"> 
     <input id="green_check" {% if diet.is_green %} checked {% endif %} type="checkbox" data-symbol="green-check"/> 
     <label> Diet choose </label> 
    </div> 
</form> 

is_green與默認=假飲食模型中的布爾字段。檢查複選框後,它改變爲True,但在視圖中如何做到這一點?

回答

0

你需要觸發一個AJAX提交表單的複選框改變聽衆:

爲了讓您一開始(這是一個非常精簡版,檢查更多的jQuery的文檔):

$('#green_check').on('change', $('form#foodForm').submit); 

防止默認提交處理:

$('form#foodForm').on('submit', function(event) { 
    event.preventDefault(); 
    $.ajax({ 
     url: this.action, 
     data: $(this).serialize(), 
     succes: function(data) { 
      // this is what your view returns which should be either 
      // - an html snippet 
      // - json (returned via JSONResponse) 
     }, 
     error: ... 
    }); 
}); 
相關問題