Zend 1 ajax与dojo informatiom person

Zend 1 ajax与dojo informatiom person,ajax,zend-framework,dojo,Ajax,Zend Framework,Dojo,我正在使用Zend 1和dojo,不知道如何使用ajax。在我的特殊情况下,当选择时​​在协商中,从数据库返回ajax信息。要输入用户的ID,请通过ajax打印用户的信息。在我的工作中,我不能使用jquery。好问题! 使用dojo不是很有成效的工作,但是可以精确地实现您想要的方式。您将使用数据库中捕获的信息创建p元素 在表单中,添加属性“onChange” $form->setAttrib('onChange', 'recoveryData()'); 在js文件中是否有函数recove

我正在使用Zend 1和dojo,不知道如何使用ajax。在我的特殊情况下,当选择时​​在协商中,从数据库返回ajax信息。要输入用户的ID,请通过ajax打印用户的信息。在我的工作中,我不能使用jquery。

好问题! 使用dojo不是很有成效的工作,但是可以精确地实现您想要的方式。您将使用数据库中捕获的信息创建p元素

在表单中,添加属性“onChange”

$form->setAttrib('onChange', 'recoveryData()');
在js文件中是否有函数recoveryData(),例如:

dojo.require("dojo.html");

// clean data
var myNewElement = dojo.byId('myNewElement');
if (myNewElement != null) { 
    dojo.empty("myNewElement"); 
}

dojo.xhrPost({
    content: {id: dojo.attr(dojo.byId("myElement"), "value")},
    url: 'your-base-path/recovery-data/',
    load: function (response) {
        if (response != false) {
            // converte to obj
            var obj = dojo.fromJson(response);

            // creat new element
            var node = dojo.create("span", {
                    innerHTML: obj.NomeServidor,
                    id: "myNewElement",
                    'class': 'row'
                }
            );
            dojo.place(node, dojo.byId("myElement"), "after");
        }
    }
});
现在,您需要在控制器中创建一个操作“recoveryDataAction()”,如下所示:

$data = $this->getrequest()->getPost();
$id = $data['id'];
if ($this->getrequest()->isXmlHttpRequest()) {
    // disable layout
    $this->_helper->layout()->disableLayout();
    // disable view render
    $this->_helper->viewRenderer->setNoRender();

    $yourTable = new Project_Model_YourTable();
    $row = $yourTable->fetchRow($id);
    if ($infos != null) {
        echo Zend_Json::encode($row);
        return;
    }
    echo false;
}