Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

ExtJs-выполнить запрос при evt: listener: resize

29K
14 мая 2012 года
webdev
56 / / 08.05.2010
Таков вопрос.

Есть у меня связка jQuery + ExtJS, картинка из сервера грузится в окно ExtJS. Потом с этой картинкой работает jQuery.
Не спрашивайте почему и зачем - так нужно.

Нужно сделать следующее, я почти сделал, но мои знания ExtJs нулевые, помогите строчкой кода.

Значитс нужно отсылать на сервер повторный запрос если окно изменило свои размеры. Евент нашел и подписал на него вывод в Консоль, все срабатывает, а как мне на этот евент подписать запрос на сервер???

Вот здесь я посылаю первый запрос при загрузке, его мне нужно отсылать повторно по евенту.


 
Код:
$("#target").one('load', loadCallback).attr('src', adresse).each(function () {
                if (this.complete) $(this).trigger('load');
            });


Вот мой html.


Код:
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
   
    <head>
        <title>JFreeChart_Bsp</title>
        <link rel="stylesheet" type="text/css" href="./extjs/resources/css/ext-all.css">
        <link rel="stylesheet" type="text/css" href="./jQuery/imgareaselect-0.9.8/css/imgareaselect-default.css"/>
       
        <script type="text/javascript" src="./jQuery/jquery-1.7.2.js"></script>
        <script type="text/javascript" src="./jQuery/imgareaselect-0.9.8/scripts/jquery.min.js"></script>
        <script type="text/javascript" src="./jQuery/imgareaselect-0.9.8/scripts/jquery.imgareaselect.js"></script>
       
        <script type="text/javascript" src="./extjs/ext-all-debug.js"></script>

    </head>
   
    <body>
 
        <script type="text/javascript">
        Ext.onReady(function() {
            var win = new Ext.Window({
                width : 1465,
                height: 785,
                id : 'autoload-win',
                autoScroll : true,
                html: '<div id="generateImage"><img id="target" alt="generateImg" height="{height}" width="{width}" /></div>',
                listeners:{
                    resize: function (panel, w,h){
                        console.log("wi: "+ w +" Hi: "+h);
                    }
                }
            });
                 
            win.show();
           
            $("#target").one('load', loadCallback).attr('src', adresse).each(function () {
                if (this.complete) $(this).trigger('load');
            });

            $('#target').imgAreaSelect({
                handles: true,
                movable: false,
                resizable: false,
                autoHide: true,
                onSelectEnd: function (img, selection) {
                        $("#target").one('load', loadCallback).attr("src", adresse + "&x1=" + selection.x1 + "&y1=" + selection.y1 + "&width=" + selection.width + "&height=" + selection.height).each(
                       function () {
                           if ($("#target").complete)
                                    $("#target").trigger('load');
                        });
                }
            });
        });
        </script>
       
        <script type="text/javascript">
            var random = Math.floor((Math.random() * 10000) + 1);
            var cookie = "cookieName=" + random;
            var adresse = "/JFreeeChartServlet/generateImg?" + cookie;
            var cookieString = new String();

            function loadCallback() {
                cookieString = get_all_cookie(random)
               
//              console.log("Cookie@"+random+"  DocCookie = " + cookieString);
//              console.log("Cookie@"+random+" : "+substr_search("plotWidth"));
//              console.log("Cookie@"+random+" : "+substr_search("plotHeight"));
//              console.log("Cookie@"+random+" : "+substr_search("plotX"));
//              console.log("Cookie@"+random+" : "+substr_search("plotY"));
               
               
                setVars(substr_search("plotWidth"), substr_search("plotHeight"), substr_search("plotX"),substr_search("plotY"));
            }

            function get_all_cookie(cookie_name) {
                var results = document.cookie.match('(^|;) ?' + cookie_name + '=([^;]*)(;|$)');

                if (results) return (unescape(results[2]));
                else return null;
            }
           
            function substr_search(str){
                var strStartPos = cookieString.search(str);
                var startPos = cookieString.indexOf("=", strStartPos);
                var endPos = cookieString.indexOf(":", strStartPos);

                return cookieString.substring(startPos+1, endPos);
            }

        </script>
    </body>
</html>


СПААСИБО!!
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог