我試圖從j2D jQuery數據從j2ta控制器通過AJAX加載jQuery數據。
但是僅顯示空白dataTable(具有期望的格式,搜索框等)
是否可以有人pl。在我的代碼中指出我犯錯的地方。
數據不顯示(由「get_data」方法返回)。
我已經確保數據庫表已填充。
控制器JSON數據jQuery dataTable在web2py
def show_data():
return dict()
def get_data():
custdata = db.executesql(qry, as_dict=True)
return custdata
出於測試目的,我回到在&驗證相同的 「jsonlint.com」 的單獨方法response.json(custdata)。 這是有效的json。
視圖(show_data.html)
{{extend 'layout.html'}}
$(document).ready(function() {
var oTable = $('.smarttable').dataTable({
"sScrollY": "200px",
"sAjaxSource": "{{=URL('MIS','get_data.json')}}",
"sDom": "frtiS",
"bDeferRender": true
});
});
最後,HTML表格標記使用類表= 「smarttable」 定義
我已經試圖在「控制器」返回dict(data = custdata)。然後在「視圖」中,嘗試訪問該數據爲: - 「sAjaxSource」:「{{= URL('MIS','get_data')}}」,但沒有成功。如果使用response.json(custdata),並直接在瀏覽器中訪問,它會在瀏覽器頁面上寫入json。但是,如果從「sAjaxSource」訪問,則不會呈現數據。我認爲我調用「get_data」方法的方式有問題。你可以套住嗎?幫助找到錯誤?....謝謝。 – Vineet
MIS是您的應用程序名稱還是控制器名稱?URL()將假設它是控制器名稱,並生成URL爲/ appname/MIS/get_data - 它應該是什麼,或者它應該是/ MIS/controller/get_data(在這種情況下,您需要替換' MIS「,並在調用URL()時使用控制器名稱)。 – Anthony
我有這樣的結構。 a ='MyWheels',c ='MIS',f ='get_data'。所以,{{= URL('MIS','get_data')}}應該可以工作。但它不會將數據返回到dataTable中。 – Vineet