0
我有一個表單,用戶輸入一些數據然後提交。我沒有彈出窗口或轉到新頁面,而是使用了「不可見」iframe,因此頁面不會刷新。如果一切順利,那麼iframe應該保持隱形。但是,如果servlet拋出一個錯誤,我想要在iframe中顯示該錯誤,那麼iframe應該將其自身大小調整爲2-300px。是否有一種方法來檢查iframe是否在加載頁面後是否有錯誤消息?
這可能嗎?
我有一個表單,用戶輸入一些數據然後提交。我沒有彈出窗口或轉到新頁面,而是使用了「不可見」iframe,因此頁面不會刷新。如果一切順利,那麼iframe應該保持隱形。但是,如果servlet拋出一個錯誤,我想要在iframe中顯示該錯誤,那麼iframe應該將其自身大小調整爲2-300px。是否有一種方法來檢查iframe是否在加載頁面後是否有錯誤消息?
這可能嗎?
假設這是全部在同一個域上,您應該改爲使用Ajax。我建議使用jQuery來簡化這一任務:http://api.jquery.com/category/ajax/
你可以做這樣的事情:
$.get('ajax/checkError.php', function(data) {
if ("failed" === $.trim(data)){
alert('An error occurred.');
}
});
您的代碼應該比這個(可能使用,而不是一個狀態字符串JSON)更加堅固,但它是一個好的開始。
如果您想顯示錯誤,那麼可以使用alert
(如本例中)或使用dialog。像這樣做是不引人注意和易於維護的(因爲iframes使用起來並不好玩)。
iframes通常皺眉,尤其是看不見的。