Возникла проблема:
При создании двух и более диалоговых окон на базе iFrame средствами jQueryUI наблюдается сбрасывание содержимого фрейма.
Что неприемлемо, т.к. в разных диалоговых окнах могут быть открыты разные формочки, часть полей из которых может быть пользователем заполнена.
В качестве примера, код
index.html
<!DOCTYPE html>
<html>
<head>
<title>Тест двух диалогов в одном окне</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<script src="http://code.jquery.com/jquery-1.9.1.js"></script>
<script src="http://code.jquery.com/ui/1.10.3/jquery-ui.js"></script>
<link rel="stylesheet" href="http://code.jquery.com/ui/1.10.3/themes/smoothness/jquery-ui.css"/>
<script type="text/javascript">
var ifr=function(){
var file=this.id+'.html', id=this.id+'_dialog';
var $w=$("<iframe/>").attr({src:file, id:id, title:file, wodth: '100%', height: '100%'}).css({padding:0,margin:0, border: 'none'}).appendTo('body');
$w.dialog();
}
$(function(){
$("#ifr1, #ifr2").click(ifr)
})
</script>
</head>
<body>
<h1>Тест двух диалогов в одном окне</h1>
<button id="ifr1">Dialog1</button>
<button id="ifr2">Dialog2</button>
</body>
</html>
ifr1.html
<!DOCTYPE html>
<html>
<head>
<title>iFrame1</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<body>
<h1>iFrame1</h1>
<input id="text1" type="text" value="" placeholder="Введите что-нибудь"/>
</body>
</html>
ifr2.html
<!DOCTYPE html>
<html>
<head>
<title>iFrame2</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<body>
<h1>iFrame2</h1>
<input id="text1" type="text" value="" placeholder="Введите что-нибудь"/>
</body>
</html>
Или, рабочий код здесь:
http://jqueryui.jwork.ru/
Проблема появляется после ввода в текстовое поле одного и второго окна и клику по заголовку противоположного окна (что сейчас не в фокусе), особенно часто при некотором наложении диалогов друг на друга, и при попытке перетащить неактивный диалог (за заголовок окна).
Традиционный вопрос, кто знаетчто происходит? почему это происходит? ну и ключевой -
как побороть?
P.S. пробовал в Opera, Chrome, Firefox, Safari везде наблюдается