示例#1
0
    function show()
    {
        /* @var $model \Billing\Searcher */
        $model = $this->getModel();
        $this->_SUBSCRIBERView->show();
        echo "\n            {$this->_filterView->getHtml()}<br>\n                <span id='{$this->getFullIo()}_" . self::PREVIEW_ID . "'>";
        $this->showPreview();
        echo "\n            </span>";
        ?>
        <script>
            $(function(){
                $("#<?php 
        echo $this->_filterView->getFullIo();
        ?>
").autocomplete({
                    source:"Billing_SearcherView_Callback.php"
                });
                
                var domFilter= document.getElementById("<?php 
        echo $this->_filterView->getFullIo();
        ?>
");
                var domSUBSCRIBER= document.getElementById("<?php 
        echo $this->_SUBSCRIBERView->getFullIo();
        ?>
");
                
                domFilter.loadTimer= new DisplacingTimer(document, function(sender){
                    //log4javascript.getDefaultLogger().debug("searching...");
                    $("#<?php 
        echo $this->getFullIo() . "_" . self::PREVIEW_ID;
        ?>
").load("<?php 
        echo self::CALLBACK_FILENAME;
        ?>
", {SUBSCRIBER:domSUBSCRIBER.value});
                }, 1000, DisplacingTimer.Type.timeout);

                //события обрабатываются "Выбрал из меню" и "Потерял фокус с изменением". А "Закрылось" не обрабатывается потому что закрыться можно и без изменения
                $("#<?php 
        echo $this->_filterView->getFullIo();
        ?>
").on("autocompletefocus", function( event, ui ) {
                    //log4javascript.getDefaultLogger().debug("focus...");
                    domSUBSCRIBER.value= ui.item.value;
                    event.target.value= ui.item.label;
                    domFilter.loadTimer.start();
                    return false;
                })
                .on("autocompleteselect", function( event, ui ) {
                    return false;
                });
            }); //$
        </script>
        <?php 
    }
    function show()
    {
        /* @var $model \Billing\Searcher */
        $model = $this->getModel();
        $this->_idView->show();
        $this->_filterView->show();
        ?>
            <div id='<?php 
        echo $this->getFullIo() . "_" . self::PREVIEW_ID;
        ?>
'>
        <?php 
        if ($model) {
            \Page\View\ViewManager::getView($model, $this, self::PREVIEW_ID, TRUE);
        }
        ?>
            </div>
        <script>
            $(function(){
                $("#<?php 
        echo $this->_filterView->getFullIo();
        ?>
").autocomplete({
                    source:"<?php 
        echo self::CALLBACK_FILENAME;
        ?>
"
                });
                
                var domFilter= document.getElementById("<?php 
        echo $this->_filterView->getFullIo();
        ?>
");
                var domId= document.getElementById("<?php 
        echo $this->_idView->getFullIo();
        ?>
");
                
                domFilter.loadTimer= new DisplacingTimer(document, function(sender){
                    //log4javascript.getDefaultLogger().debug("searching...");
                    $("#<?php 
        echo $this->getFullIo() . "_" . self::PREVIEW_ID;
        ?>
").load("<?php 
        echo self::CALLBACK_FILENAME;
        ?>
", {SUBSCRIBER:domId.value});
                }, 1000, DisplacingTimer.Type.timeout);

                //события обрабатываются "Выбрал из меню" и "Потерял фокус с изменением". А "Закрылось" не обрабатывается потому что закрыться можно и без изменения
                $("#<?php 
        echo $this->_filterView->getFullIo();
        ?>
").on("autocompletefocus", function( event, ui ) {
                    //log4javascript.getDefaultLogger().debug("focus...");
                    domId.value= ui.item.value;
                    event.target.value= ui.item.label;
                    domFilter.loadTimer.start();
                    return false;
                })
                .on("autocompleteselect", function( event, ui ) {
                    return false;
                });
            }); //$
        </script>
        <?php 
    }