簡體   English   中英

使用Rails上傳AJAX文件后檢查iframe狀態

[英]Check iframe status after AJAX File Upload with Rails

有類似的帖子, 使用Javascript從加載的iframe檢索HTTP狀態代碼,但是該解決方案要求服務器端返回javascript,以在iframe中調用函數。 相反,我只是想檢查iframe的HTTP狀態代碼,而不必在iframe本身內調用函數,因為我的應用程序要么通過HTML返回完整的網站,要么將單個對象返回為JSON。 本質上,我一直在嘗試實現一種回調方法,該方法根據HTTP狀態碼返回成功|失敗。

目前,我有uploadFrame.onLoad = function() { ... so far pretty empty ... } ,我不確定在查找HTTP狀態代碼時要檢查什么。 到目前為止,我主要依靠jQuery的$.ajax()來處理成功|失敗,但是我想進一步了解XHR調用和iframe使用背后的機制。 提前謝謝。


更新

我使用jQuery提出的解決方案

form.submit(function() {
  uploadFrame.load(function() {
    //using eval because the return data is JSON
    eval( '(' + uploadFrame[0].contentDocument.body.children[0].innerHTML + ')' );
    //code goes here
  });
});

我認為最好的解決方案是將<script>標記注入到iframe <head>然后在其中插入“檢測中”的javascript代碼。

像這樣的東西:

$('#iframeHolderDivId').html($.get('myPage.php'));
$('#iframeHolderDivId iframe head').delay(1000).append($('<script/>').text('your js function to detect load status'));

也許這不是最好的解決方案,但我認為它可行

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM