2012-01-31 27 views
2

heyho,jquery:從隱藏的iframe保存表單響應到變量

我有一個表單,我發送到腳本的行動。響應被存儲到預標籤中的隱藏iframe中。我想用jquery將html-text答案存儲到一個變量中。但問題是如何以及何時:-)! onsubmit是早期的..你能幫忙嗎?

<form id="search" action="http://xyzsearchurl" target="result"> 
<input type="text" name="qparam" /> 
<input type="submit" /> 
</form> 
<iframe id="result" name="result" src="#" style="display:none;"></iframe> 

$('#search').submit(function(){ 
    alert($('#result pre').html()); 
}); 

任何想法如何獲得文本形式的預標記AFTER獲取響應?

非常感謝

回答

0

您可以從註冊的iframe onload事件,然後閱讀的內容。 注:如果框架是由同一個服務器(同源策略)加載,這隻會工作

$('#search').submit(function(){ 
    //register load event of iframe... 
    $('#result').load(function() { 
    $("#result").contents().find("what you need..."); 
    }); 
}); 
+0

哎丹尼爾,遺憾的是它不相同的起源(社會化媒體API)。你知道另一種方式嗎?我以爲abot超時,但這不是「美麗」 – 2012-01-31 13:12:41

+0

閱讀JSONP請求,但您使用的其他服務器必須支持它。如果沒有,你將不得不在你的服務器端使用代理... – 2012-01-31 13:28:53

+0

hey daniel,看到這個[twitter post](http://stackoverflow.com/questions/3996438/twitter-search-api-with-jquery-error )。這正是我的問題:-)我昨天沒有找到它。 $ .getJSON()工作正常,但我使用聲明的$ .ajax()解決方案,我更喜歡的問題。我不知道如何在firebug中看到如何獲得答案(就像myCallbackFunction({JSONresponse})),但是當我嘗試console.log()結果時沒有任何反應 – 2012-02-01 10:39:46