控制器:
public function searchAction()
{
$form = new Application_Form_Search;
$k = $form->getValue('keyword');
$car = new Application_Model_Car();
$mapper = new Application_Model_CarMapper();
$this->view->cars = $mapper->search($keyword);
}
形式
<?php
class Application_Form_Search extends Zend_Form {
public function init(){
$this->setMethod('post');
$this->addElement('text', 'keyword', array(
'required' => true,
'label' => 'Keyword:'
));
$this->addElement('button', 'submit', array(
'required' => false,
'ignore' => true,
'label' => 'Search'
));
}
}
?>
原始视图页
$(document).ready(function(){
$("#submit").click(function(){
$("#main").load('/cars/search');
});
});
在这里,我尝试使用.load()
在搜索视图中,<?=$this->keyword?>
显示为空
似乎从表单
答案 0 :(得分:0)
好的,您需要设置.load的第二个变量来发送数据。目前,您没有将数据发送到.load函数
所以它会更像这样。这假设你有关键字
的id$("#main").load('/cars/search', {'keyword':$('input#keyword').val()});
或者您可以使用
$("#main").load('/cars/search', {'keyword':$('[name="keyword"]').val()});
请看 http://api.jquery.com/load/
还要记住逃避价值,以免人们通过您的表单发送恶意代码。
希望有所帮助