我有一個定時器,會間隔重新提交頁面。有沒有一種角度來做到這一點?如何從定時器回調中激活ng-submit?
現在我只是提交表單的腳本里面:
<script type="text/javascript" defer="defer">
window.setTimeout(function() {
document.getElementById("srchForm").submit();
}, 300000); //5 min
</script>
<form id="srchForm" ng-controller="OutageViewController" ng-submit="loadData(0)">
<p id="div_srchForm"> ....</p>
<button id="btnReload" type="submit" >Submit</button>
</form>
,但它會給我404種錯誤狀態:
404 - 文件或目錄未找到。 您正在查找的資源可能已被刪除,更名或
我建議一個不同的方法 - 使用'$超時'在控制器()。看起來你所要做的只是刷新正在顯示的數據,並且從控制器而不是視圖這樣做似乎更合適。更好的做法是實施類似SignalR的功能,以便在有新數據顯示時將更新的數據推送到連接的客戶端。 – Lex
實際上ng-submit不是'submit'提交:它實際上是一個AJAX調用的函數,它部分更新表單,所以它不像重新加載整個表單!所以在回調中使用提交嘗試執行ng-submit是錯誤的。我必須解決它。見下面我的發現。 –
好的,但我仍然認爲從控制器做到這一點,而不是在視圖上使用一些JavaScript黑客更好。 – Lex