我想知道如何在不使用ZendX的情况下将自动完成的JQuery UI小部件添加到我在Zend Framework中开发的表单中。网站的文件夹是根据框架设置的,但我没有使用Zend_Form。
所以我把所有东西都剥离到了最简单的形式,它起作用了:
<script>
$(document).ready(function() {
$("input#autocomplete").autocomplete({
source: ["best", "buy"]
});
});
</script>
<input id="autocomplete" />
但我有一个PHP文件,它以JSON方式返回数据库中的条目。我该如何使用呢? 我尝试用文件名替换数组,但没有任何反应。 谢谢!
答案 0 :(得分:3)
这应该适合你:
// js stuff
$( "input#autocomplete" ).autocomplete({
source: "http://localhost/application/index/autocomplete"
});
//IndexController.php
/**
* Return AutoComplete stuff
*/
public function autocompleteAction()
{
// disable view and layout, we want some fanzy json returned
$this->_helper->layout()->disableLayout();
$this->_helper->viewRenderer->setNoRender(true);
$values = array('best', 'buy');
$valuesJson = Zend_Json::encode($values);
echo $valuesJson;
}
你可以将BaseUrl传递给你的脚本(而不是使用完整路径)
//layout.phtml
<script type="text/javascript">
var baseUrl = "<?= $this->baseUrl(); ?>";
</script>
所以你可以这样做:
source: baseUrl + "/index/autocomplete"