我一直在尝试让 JQuery Sortable 在我的 Zend Framework 应用程序上工作,但只取得了有限的成功。我一直在使用 ZendX 库来实现我需要的大部分 Jquery 功能,例如 datepicker,并且这些功能非常好。ZendX 库不支持我似乎无法排序。
至于代码。在我的引导程序中,我根据使用定义了 Jquery 等的辅助路径:
protected function _initViewHelpers()
{
$view = new Zend_View();
$view->addHelperPath('ZendX/JQuery/View/Helper/', 'ZendX_JQuery_View_Helper');
$view->jQuery()->setLocalPath('http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js')
->setUiLocalPath('http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.21/jquery-ui.min.js')
->addStylesheet('http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.21/themes/smoothness/jquery-ui.css');
$viewRenderer = Zend_Controller_Action_HelperBroker::getStaticHelper('ViewRenderer');
$viewRenderer->setView($view);
Zend_Controller_Action_HelperBroker::addHelper($viewRenderer);
}
然后我使用在布局中激活 JQueryecho $this->jQuery()->enable();
现在一切正常,日期选择器正常工作,它显示了预期的平滑度设计等。
现在,我在 index.phtml 中实现了一个带有简单可排序脚本的小列表,如下所示:
<!DOCTYPE html>
<html>
<head>
<script>
$(document).ready(function() {
$("#sortable").sortable();
});
</script>
</head>
<body style="font-size:62.5%;">
<ul id="sortable">
<li>Item 1</li>
<li>Item 2</li>
<li>Item 3</li>
<li>Item 4</li>
<li>Item 5</li>
</ul>
</body>
</html>
我可以让它工作的唯一方法是添加该行
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.21/jquery-ui.min.js"></script>
到 index.phtml。这对我来说看起来就像它得到的一样荒谬。在引导程序中我已经添加了这个脚本,那么为什么我必须再次这样做才能让排序工作?
有人碰巧有解决我的问题的方法吗?
任何建议将被认真考虑 :)