1
我一直有這個問題很久。但我無法想象如何做到這一點。有沒有辦法,我們可以使用模板語言的javascript對象。例如,我有在選定小部件上呈現的類別的查詢集。Django:用戶Javascript對象作爲上下文變量
Category: <select name="category" id="id_category">
{% for category in categories %}
<option value="{{category.id}}">{{category.name}}</option>
{% endfor %}
</select>
現在,對於選定的類別,我異步調用服務器以返回相關的產品類型。
$('#id_category').change(function(){
getProductTypes($(this).val());
});
在ajax函數中,我無法在url模板標記中使用category_id js對象。由於這個原因,我必須對目標網址進行硬編碼。任何人都可以請建議一種方法來處理這個。由於
function getProductTypes(category_id){
//Would like to do this
var url = {% url lookup_product_types category_id %}
//But end up doing this
var url = '/'+category_id+'/product_types/find/'
$.ajax({
url:url,
data:{category:category_id},
dataType:'json',
success: function(data, status, xhr){
html = '<select>';
$.each(data, function(index, value){
html += '<option value='+this.pk+'>'+this.fields.name+'</option>';
});
html += '</select>';
$('#productType').html(html);
}
});
這似乎是這樣做的一個很好的方式。謝謝,我會繼續這樣做。 –
沒問題 - 我最近才遇到數據屬性 - 我覺得我一直在尋找它很久了! –
呵呵......我們一般都會想念這個明顯的。再次感謝。 –