当前位置: 首页 > 知识库问答 >
问题:

如何使用zend framework 2(2.3)和ajax请求填充表单选择

毋弘光
2023-03-14

我有3个动态选择,状态-

如果我在stateCountryCityAction(ex$idState=1;)内手动设置$idState,该函数可以正常工作,但dinamally不工作!为什么????:(

这是我的应用程序\控制器:

public function stateCountryCityAction()
    {
    $form1   = new StateCountryCityForm();
    $form1->get('State')->setOptions(array('value_options'=> $this->getState()));
    $request = $this->getRequest();

    if ($request -> isXmlHttpRequest()){
        $data = $request->getPost();  
        if (isset($data['state'])){
           $idState = $data['state'];
           $form1->get('Country')->setOptions(array('value_options'=> $this->getCountry($idState))); 
        }  

    }
    $viewmodel->setTerminal(true);
    $viewmodel->setVariables(array(
                'form1' => $form1,

    ));

    return $viewmodel;
}

这是应该填充第二个select的函数。它位于我的应用程序\控制器中,位于其他功能的下方:

public function getCountry($idState)
    {

    $dbAdapter = $this->getAdapter();
    $sql       = 'SELECT idCountry, Country FROM Country WHERE State_idState = '.$idState.' ORDER BY Country';
    $statement = $dbAdapter->query($sql);
    $result    = $statement->execute();

    $selectData = array('0' => '----- Tutta Italia -----');

    foreach ($result as $res) {
        $selectData[$res['idCountry']] = $res['Country'];
    }

    return $selectData;
}

这是我的jquery函数。我试图在select更改时提醒var状态,并且输出是正确的!jquery函数返回select的值。

$("select#State").change(function () {
         var state = $("select#State option:selected").attr('value');
         $.post("/zf-2tutorial/public/state-country-city", { state: state }, function () {

         });
     }); 

共有1个答案

许沛
2023-03-14

尝试使用此代码获取post值$idState=$request-

在代码$data=$request中-

 类似资料:
  • 问题内容: 好的,这是我对Ajax的第一次尝试,它使我发疯,因为我实在无法绕开它。我想做的是在第一个框中用数据库中的客户填充,然后使用customerID通过select.php脚本从数据库中选择所有车辆ID。发生的情况是“客户”框被选中,但是选择客户时什么也没有发生。 这是我的Test.php文件: 这是我的select.php文件: 我正在尝试修改本教程以使用数据库,但到目前为止我没有成功。

  • 问题内容: 我较早前发布了一个问题,但运气不太好,我希望清除第二个下拉列表的内容并重新填充该下拉列表,具体取决于第一个下拉列表中的值。 我有以下选择框,如下所示: 在此下拉菜单下,我还为模型添加了另一个下拉菜单: onchange我想清除第二个下拉列表,并在其中填充与汽车品牌相关的模型。例如。 然后,我具有如下所示的PHP函数(我正在使用codeigniter)-该函数使用Car ID并返回所有模

  • 问题内容: 因此,我有一个使用ColdFusion的项目,并且该项目的表单带有下拉菜单。 选择下拉列表后,我需要做的是针对ajax调用来调用ColdFusion cfc,该cfc返回信息以填写下拉列表下的表单。 以上面的小提琴为例,如果用户选择“ 2”,则名称字段将具有Bob,Fake Street 202和111-555-1234。如果他们选择“ 3”,他们将从CFC(数据库)返回任何其他信息。

  • 问题内容: 我想知道如何使用JSON填充表单吗? 我有一个使用php的JSON字符串, 并且我想使用JSON字符串填充表单控件(例如textarea或文本输入)。 我如何不使用外部插件(例如jQuery populate插件,我就看到了)来实现这一目标。 编辑:JSON格式: 这就是我从json_encode()得到的 问题答案: 此处存在问题,然后将其更改为开关值 使用它来为许多控件分配值:

  • 以下文件是我试图向nodejs(Express)服务器提交POST请求的过程。req.body不会从我的表单中填充任何类型的数据。我已经做了很多搜索,发现许多解决这个特殊问题的方法包括在我的路线之前移动身体解析器,并确保在表单字段中包含名称。 应用程序。js 指数玉 指数js(从app.post('/signup',…)调用) 安慰日志

  • 问题内容: 嗨,我想使用Ajax在下拉菜单上管理数据。 数据库字段: 1.id 2.名称 3.部门 myDesgin.php 1.如果我选择了一个下拉菜单,要更改另一个下拉菜单,则取决于使用Ajax选择的值。 2.是否有可用的代码,如果我选择一个下拉菜单,它将转到另一个子窗口并使用 Ajax 以表格式(如报告)显示数据。 提前致谢。 请给我示例代码,因为我是ajax的初学者,如果有人提供带有代码的