0
我有一個ajax函數從django函數返回一個值。 我想使輸出成爲全球性的,以便我可以在選擇下拉列表中使用它。 這裏是我的代碼。如何使ajax全局返回的值
$(document).ready(function()
{
function AjaxCall(HandleData)
{
return $.ajax({
url: "/evidence_values/",
type: "post",
data: {'evidence':document.getElementById('evidence').value},
success: function(data){ HandleData(data);}
});
}
$("#save").click(function(){
AjaxCall(function(output){filter_data = output});
});
function CallAjax(DataHandle)
{
return $.ajax({
url: "/get_evidence_items/",
type: "post",
success: function(data){DataHandle(data);}
});
}
$("#evidence_selected").click(function(){
CallAjax(function(output){items_data = output});
});
,並在其他地方的index.html下拉
<select name="evidence_selected" id="evidence_selected" style="margin-right:20px;color:#5c89db;margin-top:20px;margin-left:40px;height: 2em;border-radius: 3px;">
<option value="selectedvidence" id="selectedvidence"name="selectedvidence">Select Evidence Number</option>
{% for item in items %}
<option value="{{item.evidence}}">{{ item.evidence }}</option>
{% endfor %}
<option id="new"value="new">New</option>
</select>
如果你在全局範圍內有一個變量,那麼你可以在你定義的'success'函數中寫入它。然而,使用'success'來調用一個重寫select中的值的「update」函數可能是一個好主意。相關:http://stackoverflow.com/questions/14220321/how-to-return-the-response-from-an-ajax-call?rq=1 –