Вопрос

Я изо всех сил пытаюсь создать простое приложение zend Framework, которое может вызывать jQuery.Итак, над чем я работаю в Zend Studio 7.1.1, куда я добавил в папку библиотеки папку "ZendX".И я также скачал тему jQuery lightness, которая была добавлена в общую папку "js".

Вы обнаружите, что вся структура подобна этой:http://www.freeimagehosting.net/image.php?b95bca6dab.png Итак, что я сделал, это:1- Добавил следующие строки в файл Bootstrap.php, чтобы я получил следующее содержимое:

<?php

class Bootstrap extends Zend_Application_Bootstrap_Bootstrap
{


}
Zend_Loader::registerAutoload();
$view= new Zend_View();
$viewRenderer = new Zend_Controller_Action_Helper_ViewRenderer();
$view->addHelperPath('ZendX/JQuery/View/Helper/', 'ZendX_JQuery_View_Helper');
$viewRenderer->setView($view);
Zend_Controller_Action_HelperBroker::addHelper($viewRenderer);
$view->jQuery()->addStylesheet('/js/jquery/css/ui-lightness/jquery-ui-1.7.2.custom.css')
        ->setLocalPath('/js/jquery/js/jquery-1.3.2.min.js')
        ->setUiLocalPath('/js/jquery/js/jquery-ui-1.7.2.custom.min.js');

Затем, поскольку я не использую макеты, я напрямую добавил указатель даты в index.phtml файл с $view->jQuery() и $view->jQuery() даже если, когда я печатаю $view-> система Zend Studio intellisense не предлагает jQuery() функция.Во всяком случае, index.phtml файл является:

<style>
    a:link,
    a:visited
    {
        color: #0398CA;
    }

    span#zf-name
    {
        color: #91BE3F;
    }

    div#welcome
    {
        color: #FFFFFF;
        background-image: url(http://framework.zend.com/images/bkg_header.jpg);
        width:  600px;
        height: 400px;
        border: 2px solid #444444;
        overflow: hidden;
        text-align: center;
    }

    div#more-information
    {
        background-image: url(http://framework.zend.com/images/bkg_body-bottom.gif);
        height: 100%;
    }
</style>
<div id="welcome">
    <h1>Welcome to the <span id="zf-name">Zend Framework!</span></h1>

    <h3>This is your project's main page</h3>

<?php echo $this->headScript(); ?>
<?php echo $this->jQuery()->uiEnable();?>
<?php echo $this->jQuery(); ?>
<form id='ok'>
Pick your Date: <?php echo $this->datePicker('dp1', '', array('defaultDate' => date('Y/m/d', time()))); ?>
</form>
    <div id="more-information">
        <p><img src="http://framework.zend.com/images/PoweredBy_ZF_4LightBG.png" /></p>
        <p>
            Helpful Links: <br />
            <a href="http://framework.zend.com/">Zend Framework Website</a> |
            <a href="http://framework.zend.com/manual/en/">Zend Framework Manual</a>
        </p>
    </div>
</div>

Но ничего не работает!

Я получаю следующий результат:

ttp://www.freeimagehosting.net/загрузки/7ed0166140.png

Как вы можете видеть, текст ввода datepicker находится здесь, но при нажатии он ничего не показывает.

И для исходной страницы (index.phtml):

<style> 
    a:link,
    a:visited
    {
        color: #0398CA;
    }

    span#zf-name
    {
        color: #91BE3F;
    }

    div#welcome
    {
        color: #FFFFFF;
        background-image: url(http://framework.zend.com/images/bkg_header.jpg);
        width:  600px;
        height: 400px;
        border: 2px solid #444444;
        overflow: hidden;
        text-align: center;
    }

    div#more-information
    {
        background-image: url(http://framework.zend.com/images/bkg_body-bottom.gif);
        height: 100%;
    }
</style> 
<div id="welcome"> 
    <h1>Welcome to the <span id="zf-name">Zend Framework!</span></h1> 

    <h3>This is your project's main page</h3> 


<link rel="stylesheet" href="../public/js/jquery/css/ui-lightness/jquery-ui-1.7.2.custom.css" type="text/css" media="screen"> 

<script type="text/javascript" src="../public/js/jquery/js/jquery-1.3.2.min.js"></script> 
<script type="text/javascript" src="../public/js/jquery/js/jquery-ui-1.7.2.custom.min.js"></script> 

<form id='ok'> 
Pick your Date: <input type="text" name="dp1" id="dp1" value=""></form> 
    <div id="more-information"> 
        <p><img src="http://framework.zend.com/images/PoweredBy_ZF_4LightBG.png" /></p> 
        <p> 
            Helpful Links: <br /> 
            <a href="http://framework.zend.com/">Zend Framework Website</a> |
            <a href="http://framework.zend.com/manual/en/">Zend Framework Manual</a> 
        </p> 
    </div> 
</div>

Я действительно перепробовал много комбинаций, но так и не смог в этом разобраться!Я также пытался найти видео, показывающее точно, шаг за шагом, как интегрировать jQuery в Zend.

Что не так в коде?

Если вы можете мне помочь, я был бы вам очень признателен!

Большое спасибо,

с уважением.

Это было полезно?

Решение

<?php $this->jQuery->enable;?> должно быть enable() и находится в контроллере / bootstrap.


Если вы хотите добавить jQuery на все страницы, я бы изменил

$view->jQuery()->addStylesheet('/js/jquery/css/ui-lightness/jquery-ui-1.7.2.custom.css')
    ->setLocalPath('/js/jquery/js/jquery-1.3.2.min.js')
    ->setUiLocalPath('/js/jquery/js/jquery-ui-1.7.2.custom.min.js');

Для

$view->jQuery()->addStylesheet('/js/jquery/css/ui-lightness/jquery-ui-1.7.2.custom.css')
    ->setLocalPath('/js/jquery/js/jquery-1.3.2.min.js')
    ->setUiLocalPath('/js/jquery/js/jquery-ui-1.7.2.custom.min.js')
    ->enable()
    ->enableUi();

, в противном случае вам вообще не нужно его включать, поскольку вызов помощника типа datePicker() автоматически включает jQuery и пользовательский интерфейс jQuery на вашей странице.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top